Touch 'n Go for Payment Setup API
Last updated: April 30, 2026
To accept Touch 'n Go payments, you must:
- Create a payment setup.
- Confirm the payment.
- Redirect the customer to Touch 'n Go.
Call the Create a payment setup endpoint.
Information
Your base URL's {prefix} value is unique to your account and environment. To learn how to retrieve your base URLs for the sandbox and production environments, see API endpoints.
post
https://{prefix}.api.checkout.com/payments/setups
1{2"amount": 1100,3"currency": "MYR",4"reference": "ORD-5023-4E89",5"customer": {6"name": "Hannah Bret"7},8"order": {9"items": [10{11"name": "Wireless headphones",12"quantity": 1,13"unit_price": 110014}15]16},17"payment_methods": {18"tng": {19"terminal_type": "app",20"os_type": "android"21}22},23"settings": {24"success_url": "https://example.com/payments/success",25"failure_url": "https://example.com/payments/failure"26}27}
In the request body, provide the following:
| Field | Description |
|---|---|
number | The payment amount, in the minor currency unit. |
string | Three-letter ISO 4217 currency code. |
string | The customer's name. |
array | The list of items in the order. |
string | The name of the item. |
number | The quantity of the item. |
number | The unit price of the item, in the minor currency unit. |
string | The operating system of the customer's device.
|
string | Supported values:
|
string | The URL to redirect the customer to if the payment fails. |
string | The URL to redirect the customer to if the payment is successful. |
string | A description of the payment. |
string | A reference for the item. |
string | The country of the shipping address. |
string | A reference you can use to identify the payment. |
1{2"id": "set_rcmepwrchqab2wsergcafvijfy",3"processing_channel_id": "pc_wzjki6hw5puepb5fnvqlizj2e4",4"amount": 1100,5"currency": "MYR",6"payment_type": "Regular",7"reference": "ORD-5023-4E89",8"description": "Touch 'n Go payment",9"payment_methods": {10"tng": {11"status": "ready",12"flags": []13}14},15"available_payment_methods": [16"tng"17],18"settings": {19"success_url": "https://example.com/payments/success",20"failure_url": "https://example.com/payments/failure"21}22}
The response returns a payment_methods object, which contains the payment methods enabled on your account.
When all required fields are present, the payment_methods.tng object shows a ready status.
Confirm the payment by calling the Confirm a payment setup endpoint and provide:
- The payment setup
idas the{id}path parameter. tngas the{payment_method_name}path parameter.
post
https://{prefix}.api.checkout.com/payments/setups/{id}/confirm/tng
1{2"id": "pay_sxzrgliy2w3e5gpnby3chlswwq",3"status": "Pending",4"reference": "ORD-5023-4E89",5"customer": {6"id": "cus_2g4ehcpm6phexgkzahlwxvbgne",7"name": "Hannah Bret"8},9"_links": {10"self": {11"href": "https://{prefix}.api.checkout.com/payments/pay_sxzrgliy2w3e5gpnby3chlswwq"12},13"redirect": {14"href": "https://psp.ac.alipay.com/page/simulation-wallet/acwallet/alipayconnectcode.html?code=281666040095AHvh5AIKT0a3kv8X6Zzv3kiv&pspName=TNG&loadMode=2"15}16}17}
Redirect the customer to the redirect.href URL from the response. The customer completes the payment on the Touch 'n Go page and is then redirected back to your settings.success_url or settings.failure_url.
When accepting payments with Touch 'n Go, you need to display the Alipay+ and Touch 'n Go logos on your payment interface. To ensure that the logos meet the required brand guidelines, refer to the Brand display guidelines for online payments and Brand display guidelines for cashier payments.