Antom, leading provider of tailored payment solutions

Bangkok Bank

Bangkok Bank (BBL) is a Thai commercial bank. Founded in 1944, BBL floated on the Stock Exchange of Thailand in 1975. It is the sixth largest bank in Asia and one of the top three largest banks in Thailand. BBL has more than 10.7 million Thai users. Currently, the bank supports two different ways to pay: online banking and bank transfer via offline ATMs.

Properties

The properties of the BBL payment method are shown in the following table based on different payment types:

Payment type

Online banking

Acquirer

AntomSG, AntomHK, AntomUK, AntomEU

Refund

❌
Merchant entity location

SG, HK, UK, EEA

Partial refund

❌

Buyer country/region

Thailand

Refund period

❌

Processing currency

THB

Time to return refund result❌

Payment flow

Redirect

Time to return payment result

Real-time

Minimum payment amount1 THB per transaction

Chargeback/Dispute

❌
Maximum payment amount2 million THB per transaction and per dayDefault timeout14 minutes

Payment type

Bank transfer

Acquirer

AntomSG, AntomHK, AntomUK, AntomEU

Refund

❌
Merchant entity location

SG, HK, UK, EEA

Partial refund

❌

Buyer country/region

Thailand

Refund period

❌

Processing currency

THB

Time to return refund result❌

Payment flow

Redirect

Time to return payment result

Real-time

Minimum payment amount1 THB per transaction

Chargeback/Dispute

❌
Maximum payment amount2 million THB per transaction and per dayDefault timeout

48 hours

Customize the timeout✔️

User experience

Note: The following payment flows on different terminals are reference only, and represent this payment method's flow on different terminal types. For supported merchants' terminal types, consult Antom Technical Support.

The following graphic shows the user experience of BBL for the WAP terminal in different scenarios.

image.png

  1. The buyer selects BBL to pay.
  2. The buyer inputs the account ID and password to enter the bank page.
  3. The buyer confirms the order information and completes the payment.
  4. The buyer is redirected to the merchant result page.

image.png

  1. The buyer selects BBL to pay.
  2. The buyer is directed to the payment code page.
  3. The buyer inputs the mobile PIN.
  4. The buyer enters the bill payment page.
  5. The buyer confirms the payment.
  6. The buyer is redirected to the merchant result page.

Supported online payment integrations

Antom offers a range of integration options tailored to each payment method. Each payment method may support different online payment integration options, allowing for flexibility based on your business requirements. The table below provides detailed information about the specific integrations available for each payment method:

Supported online payments

Supported integrations

One-time Payments

✔️ API-only

✔️ Hosted Checkout Page

❌ Embedded Checkout Page

✔️ Web Element

✔️ Mobile Element

❌ Payment links

Tokenized Payment

❌

Subscription Payment

❌

EasySafePay

❌

Scan to Link

❌

Integration considerations

The following section outlines integration considerations for various payment types, detailing customized integration solutions and payment method features.

About normalUrl

For WAP and App terminals, normalUrl is returned in the response of the pay (One-time Payments) API. Different terminal types have specific integration features when returning normalUrl:

  • WAP: The returned normalUrl  is the browser link. The buyer is redirected to the bank payment page and complete the payment by logging in with the account and password.
  • App: The returned normalUrl does not trigger the payment method app. It is recommended to render the bank middle page URL directly within the merchant app and set the merchant result page to the browser link instead of the app's scheme. If you use the external redirection to open the bank middle page URL, set the merchant result page to the merchant app's scheme or redirect the browser link to the scheme or deeplink.
  • Web: Not supported on PC.

After payments

This payment method does not support refunds. It is recommended to communicate directly with the buyer offline.

Default timeout

If the buyer does not complete the payment, Antom sends you an asynchronous notification of the payment result at the 14th minute. The timeout period for the merchant to wait for the asynchronous notification or inquire about the result must be greater than 14 minutes.

About normalUrl

  • When accepting payments from BBL, you can choose whether to use normalUrl:
  • If choosing not to use normalUrl, you can directly render the codeValue in the API response on the merchant page to display the QR code or payment code, reducing page redirections and improving the payment experience.
  • If choosing to use normalUrl, redirect your buyer to the address specified by normalUrl and proceed the payment process as indicated in User experience.
  • For WAP and App terminals, normalUrl is returned in the response of the pay (One-time Payments) API. The buyer is redirected to the address specified by normalUrl and uses the payment code displayed on the page to proceed with the payment within the mobile banking app or on the offline ATM device. After the payment is completed, the middle page automatically redirects to the merchant result page.
  • Different terminal types have specific integration features when returning normalUrl.
  • WAP: The returned normalUrl is the payment code and payment operation display page. The buyer copies the payment code and proceeds to the bank app or the ATM based on the payment operation or the screenshot to complete the payment.
  • App: The returned normalUrl does not trigger the payment method app. It is recommended that you render the URL page directly within the merchant app and provide payment operation steps to guide buyers to complete the payment.
  • Web: The returned normalUrl is the payment code and payment operation display page. The buyer copies the payment code and proceeds to the bank app or the ATM based on the payment operation or the screenshot to complete the payment.

After payments

  • After the buyer completes the payment in the bank app, the banking app will not automatically redirect to the merchant's results page. The buyer needs to manually navigate to the transaction initiation app (the merchant app or browser).
  • This payment method does not support refunds. It is recommended to communicate directly with the buyer offline.
  • Obtain the payment result from the payment result notification (notifyPayment) or by making inquiries (inquiryPayment). Handle the redirection and display of the payment result page to avoid duplicate payments.

Default timeout

The QR code returned by Antom will not be refreshed automatically. When displaying the QR code, use the expireTime parameter value returned in the pay (One-time Payments) API response to display the timeout information. When displaying the payment code, enable the copy function for the payment code and allow the buyer to conveniently paste the payment code into the payment method app.

Response sample

The following is a code example in the payment response:

json
{
    "normalUrl": "https://iexpfront-sea-global.alipay.com/payments/method/checkout/code.html?merchantId=188iwOYLsWM%2B3OM5i43oAN6sL7yTti1YlTOEpSbxNsmiew%3D&paymentRequestId=Xryjdo2GKK4eetbU8mXRkZ%2FNUzRJ9m77mJ9eyTT9VIg%3D&clientId=5Y607N2YJU8006726",
    "orderCodeForm": {
        "codeDetails": [
            {
                "codeValue": "6176225925",
                "displayType": "TEXT"
            },
            {
                "codeValue": "https://iexpfront-sea.alipay.com/showQrImage.htm?code=3%252Fk97oupdVD%252ByBP1ou%252Bpti39M%252FUJ2xuD8vdS0ApwEur8PO87jM03WB9zOqjuudotBC0t%252BIfiXsQ0qVtvS9sluQ%253D%253D&size=M&sid=188",
                "displayType": "MIDDLEIMAGE"
            },
            {
                "codeValue": "|010555303610000 0000006176225925 0000006176225925 150",
                "displayType": "TEXT"
            }
        ],
        "expireTime": "2024-03-26T19:18:18-07:00"
    },
    "paymentActionForm": "{\"paymentActionFormType\":\"PaymentCodeForm\",\"paymentCodeExpireTime\":1711505898000,\"paymentCodeInfos\":[{\"paymentCodeDetails\":[{\"codeValue\":\"6176225925\",\"codeValueType\":\"DIGICODE\",\"displayType\":\"TEXT\"},{\"codeValue\":\"|010555303610000 0000006176225925 0000006176225925 150\",\"codeValueType\":\"QRCODE\",\"displayType\":\"IMAGE\"},{\"codeValue\":\"|010555303610000 0000006176225925 0000006176225925 150\",\"codeValueType\":\"BARCODE\",\"displayType\":\"IMAGE_CONVERT\"}],\"paymentCodeInfoType\":\"PAYMENT_CODE\"}]}",
    "paymentAmount": {
        "currency": "THB",
        "value": "150"
    },
    "paymentCreateTime": "2024-03-24T19:18:18-07:00",
    "paymentId": "20240325194010800100188860213229978",
    "paymentRequestId": "PAY_20240325101817745",
    "redirectActionForm": {
        "method": "GET",
        "redirectUrl": "https://iexpfront-sea-global.alipay.com/payments/method/checkout/code.html?merchantId=188iwOYLsWM%2B3OM5i43oAN6sL7yTti1YlTOEpSbxNsmiew%3D&paymentRequestId=Xryjdo2GKK4eetbU8mXRkZ%2FNUzRJ9m77mJ9eyTT9VIg%3D&clientId=5Y607N2YJU8006726"
    },
    "result": {
        "resultCode": "PAYMENT_IN_PROCESS",
        "resultMessage": "payment in process",
        "resultStatus": "U"
    }
}