Payments & Order Messages
1. Upi_payment_with_catalog_id
Interactive order_details message requesting UPI payment, with order items resolved from a linked catalog_id.
Method: POST
Endpoint: https://apis.rmlconnect.net/wba/v1/tsp/messages/
Sample request body:
\{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": \{
"type": "order_details",
"header": \{
"type": "image",
"image": {
"link": "https://www.gstatic.com/webp/gallery/1.jpg"
// "provider": {
// "name": ""
// }
}
\},
"body": {
"text": "Hello"
},
"footer": {
"text": "your-text-footer-content"
},
"action": {
"name": "review_and_pay",
"parameters": {
"reference_id": "hhvtff",
"type": "digital-goods",
"payment_type": "upi",
"payment_configuration": "RMLUAT11",
"currency": "INR",
"total_amount": {
"value": 1100,
"offset": 100
},
"order": {
"status": "pending",
"catalog_id": "1234567",
"expiration": {
"timestamp": "1796885016",
"description": "cancellation-explanation"
},
"items": [
{
"retailer_id": "3",
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
}
}
],
"subtotal": {
"value": 100,
"offset": 100
},
"tax": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"shipping": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"discount": {
"value": 1000,
"offset": 100,
"description": "optional_text",
"discount_program_name": "optional_text"
}
}
}
}
\}
\}Notes:
payment_configuration references a payment gateway/UPI handle configured on the WABA account (RMLUAT11 in this sample — replace with the client's own configuration name).
2. Upi_paymnet_without_catalog_id
Interactive order_details message requesting UPI payment with line items defined inline (no catalog_id).
Method: POST
Endpoint: https://apis.rmlconnect.net/wba/v1/tsp/messages/
Sample request body:
{"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": {
"type": "order_details",
"header": {
"type": "image",
"image": {
// "id": "1234"
"link": "https://www.gstatic.com/webp/gallery/1.jpg"
}
},
"body": {
"text": "Hello Avinash"
},
"footer": {
"text": "your-text-footer-content"
},
"action": {
"name": "review_and_pay",
"parameters": {
"reference_id": "dvdvdv",
"type": "digital-goods",
"payment_type": "upi",
"payment_configuration": "RMLUAT11",
"currency": "INR",
"total_amount": {
"value": 1200,
"offset": 100
},
"order": {
"status": "pending",
"expiration": {
"timestamp": "1886408464",
"description": "cancellation-explanation"
},
"items": [
{
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
},
"country_of_origin": "country-of-origin",
"importer_name": "name-of-importer-business",
"importer_address": {
"address_line1": "B8/733 nand nagri",
"address_line2": "police station",
"city": "East Delhi",
"zone_code": "DL",
"postal_code": "110093",
"country_code": "IN"
}
},
{
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
},
"country_of_origin": "country-of-origin",
"importer_name": "name-of-importer-business",
"importer_address": {
"address_line1": "B8/733 nand nagri",
"address_line2": "police station",
"city": "East Delhi",
"zone_code": "DL",
"postal_code": "110093",
"country_code": "IN"
}
}
],
"subtotal": {
"value": 200,
"offset": 100
},
"tax": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"shipping": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"discount": {
"value": 1000,
"offset": 100,
"description": "optional_text",
"discount_program_name": "optional_text"
}
}
}
}
}
}
<Callout icon="fa-circle-info" theme="info">
**Notes:**
Item name in source collection is misspelled ("upi_paymnet"); carried through as-is from the Postman collection.
</Callout>
## 3. Payment_gateway_razorpay_with_catalog
Interactive order_details message routed through a Razorpay payment_gateway configuration, with catalog-linked items.
Method: POST
Endpoint: [https://apis.rmlconnect.net/wba/v1/tsp/messages/](https://apis.rmlconnect.net/wba/v1/tsp/messages/)
Sample request body:
```javascript
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": {
"type": "order_details",
"header": {
"type": "image",
"image": {
"link": "https://www.gstatic.com/webp/gallery/1.jpg"
// "provider": {
// "name": "provider-name"
// }
}
},
"body": {
"text": "your-text-body-content"
},
"footer": {
"text": "your-text-footer-content"
},
"action": {
"name": "review_and_pay",
"parameters": {
"reference_id": "fbfbfgbgngn",
"type": "digital-goods",
"payment_settings": [
{
"type": "payment_gateway",
"payment_gateway": {
"type": "razorpay",
"configuration_name": "RMLUAT11",
"razorpay": {
"receipt": "receipt-value",
"notes": {
"key1": "value1"
}
}
}
}
],
"currency": "INR",
"total_amount": {
"value": 1100,
"offset": 100
},
"order": {
"status": "pending",
"catalog_id": "the-catalog_id",
"expiration": {
"timestamp": "1886408464",
"description": "cancellation-explanation"
},
"items": [
{
"retailer_id": "1234567",
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
}
}
],
"subtotal": {
"value": 100,
"offset": 100
},
"tax": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"shipping": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"discount": {
"value": 1000,
"offset": 100,
"description": "optional_text",
"discount_program_name": "optional_text"
}
}
}
}
}
}4. Payment_link_upi_with_catalog_id
Interactive order_details message using a pre-generated payment_link (UPI) instead of an in-chat gateway flow, with catalog-linked items.
Method: POST
Endpoint: https://apis.rmlconnect.net/wba/v1/tsp/messages/
Sample request body:
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": {
"type": "order_details",
"header": {
"type": "image",
"image": {
"link": "https://www.gstatic.com/webp/gallery/1.jpg"
// "provider": {
// "name": "provider-name"
// }
}
},
"body": {
"text": "Payment link with catalog id"
},
"footer": {
"text": "your-text-footer-content"
},
"action": {
"name": "review_and_pay",
"parameters": {
"reference_id": "fhfhfgnf5fh",
"type": "digital-goods",
"payment_type": "upi",
"payment_settings": [
{
"type": "payment_link",
"payment_link": {
"uri": "https://rzp.io/i/rNiAagU8y"
}
}
],
"currency": "INR",
"total_amount": {
"value": 1100,
"offset": 100
},
"order": {
"status": "pending",
"catalog_id": "1234",
"expiration": {
"timestamp": "1796885016",
"description": "cancellation-explanation"
},
"items": [
{
"retailer_id": "1234567",
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
}
}
],
"subtotal": {
"value": 100,
"offset": 100
},
"tax": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"shipping": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"discount": {
"value": 1000,
"offset": 100,
"description": "optional_text",
"discount_program_name": "optional_text"
}
}
}
}
}
}5. Payment_link_upi_without_catalog_id
Same as above (payment_link, UPI) but with inline line items and no catalog_id.
Method: POST
Endpoint: https://apis.rmlconnect.net/wba/v1/tsp/messages/
Sample request body:
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": {
"type": "order_details",
"header": {
"type": "image",
"image": {
// "id": "12345",
"link": "https://www.gstatic.com/webp/gallery/1.jpg"
}
},
"body": {
"text": "your-text-body-content"
},
"footer": {
"text": "your-text-footer-content"
},
"action": {
"name": "review_and_pay",
"parameters": {
"reference_id": "fhtmved",
"type": "digital-goods",
"payment_type": "upi",
"payment_settings": [
{
"type": "payment_link",
"payment_link": {
"uri": "https://rzp.io/i/rNiAagU8y"
}
}
],
"currency": "INR",
"total_amount": {
"value": 1200,
"offset": 100
},
"order": {
"status": "pending",
"expiration": {
"timestamp": "1796885016",
"description": "cancellation-explanation"
},
"items": [
{
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
},
"country_of_origin": "country-of-origin",
"importer_name": "name-of-importer-business",
"importer_address": {
"address_line1": "B8/733 nand nagri",
"address_line2": "police station",
"city": "East Delhi",
"zone_code": "DL",
"postal_code": "110093",
"country_code": "IN"
}
},
{
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
},
"country_of_origin": "country-of-origin",
"importer_name": "name-of-importer-business",
"importer_address": {
"address_line1": "B8/733 nand nagri",
"address_line2": "police station",
"city": "East Delhi",
"zone_code": "DL",
"postal_code": "110093",
"country_code": "IN"
}
}
],
"subtotal": {
"value": 200,
"offset": 100
},
"tax": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"shipping": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"discount": {
"value": 1000,
"offset": 100,
"description": "optional_text",
"discount_program_name": "optional_text"
}
}
}
}
}
}6. Payu_without_catalog_id
Interactive order_details message routed through a PayU payment_gateway configuration, with inline (non-catalog) line items and PayU-specific UDF fields.
Method: POST
Endpoint: https://apis.rmlconnect.net/wba/v1/tsp/messages/
Sample request body:
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": {
"type": "order_details",
"header": {
"type": "image",
"image": {
"link": "https://www.gstatic.com/webp/gallery/1.jpg"
}
},
"body": {
"text": "PayU"
},
"footer": {
"text": "your-text-footer-content"
},
"action": {
"name": "review_and_pay",
"parameters": {
"reference_id": "rygfff65ut",
"type": "digital-goods",
"payment_settings": [
{
"type": "payment_gateway",
"payment_gateway": {
"type": "payu",
"configuration_name": "RMLUAT11",
"payu": {
"udf1": "value1",
"udf2": "value2",
"udf3": "value3",
"udf4": "value4"
}
}
}
],
"currency": "INR",
"total_amount": {
"value": 1200,
"offset": 100
},
"order": {
"status": "pending",
"expiration": {
"timestamp": "1886408464",
"description": "cancellation-explanation"
},
"items": [
{
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
},
"country_of_origin": "country-of-origin",
"importer_name": "name-of-importer-business",
"importer_address": {
"address_line1": "B8/733 nand nagri",
"address_line2": "police station",
"city": "East Delhi",
"zone_code": "DL",
"postal_code": "110093",
"country_code": "IN"
}
},
{
"name": "Product name, for example bread",
"amount": {
"value": 10000,
"offset": 100
},
"quantity": 1,
"sale_amount": {
"value": 100,
"offset": 100
},
"country_of_origin": "country-of-origin",
"importer_name": "name-of-importer-business",
"importer_address": {
"address_line1": "B8/733 nand nagri",
"address_line2": "police station",
"city": "East Delhi",
"zone_code": "DL",
"postal_code": "110093",
"country_code": "IN"
}
}
],
"subtotal": {
"value": 200,
"offset": 100
},
"tax": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"shipping": {
"value": 1000,
"offset": 100,
"description": "optional_text"
},
"discount": {
"value": 1000,
"offset": 100,
"description": "optional_text",
"discount_program_name": "optional_text"
}
}
}
}
}
}7. Session_order_status
Interactive order_status message: posts a status update (e.g. completed) against a previously placed order, identified by reference_id.
Method: POST
Endpoint: https://apis.rmlconnect.net/wba/v1/tsp/messages/
Sample request body:
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "{{phone_no}}",
"type": "interactive",
"interactive": {
"type": "order_status",
"body": {
"text": "hello everyone"
},
"action": {
"name": "review_order",
"parameters": {
"reference_id": "fdgf57",
"order": {
"status": "completed",
"description": "Hello from test payment"
}
}
}
}
}Updated 10 days ago