PromptPay in Thailand

I live in Thailand now, and I want to help with PromptPay integration. Here is some information I have so far (I also posted it to the corresponding issue on GitHub):

  • Chargeback risk: It isn’t really clear, but according to this article it’s likelihood is quite small: “PromptPay payments can not easily be reversed. Only in cases of crime, and bank error will you see funds reversed. The “get paid, stay paid” use case of PromptPay beats out any payment processor or company e-wallet.”
  • Settlement: The payment is settled immediately. In fact, it’s a kind of an instance bank-to-bank transfer.
  • Mandatory fields: A user should either fill one of the following – mobile phone number / citizen ID / Tax ID of the recipient, either she could scan the provided QR code (here is an open source library.) In the latter case the payment amount might be encoded in the QR code (though not required).
  • Dispute resolution: Transactions are shown in banking apps as regular banking transactions and thus bank statements might be used in case of a dispute. I don’t know about any website that can be used to check the validity of the transfer.

I’m also interested if there are some templates or guidelines on how a good payment method integration should look (which classes/APIs are used, what files can be touched and which shouldn’t, etc.) I’ve looked at some PRs (F2F and WeChat integration), but if more information exists please let me know.

1 Like

Great thanks!

Regarding doc about integration: No there is none but its pretty straight forward and easiest is to copy paste the payment method which is closest and adjust what is different. If you search for instance for Revolut you will find all relevant classes, translation strings, protobuffer entries, etc.
Most work is uaually conceptually to be sure to understand exactly how the payment methods works and if there is any special stuff required like a popup expalining stuff or warning…

@ManfredKarrer I’ve added the PR Please note that I’m actually not a Java developer, so the thorough review is needed. As you suggested, I used the existing payment method (HalCash – as it’s most recent) for reference.

Please let me know if there is anything else I can do to push it forward.


Just merged it. That a lot! Perfect PR!