FPX payments
Learn about FPX, a common payment method in Malaysia.
Financial Process Exchange (FPX) is a Malaysia-based payment method that allows customers to complete transactions online using their bank credentials. Bank Negara Malaysia (BNM), the Central Bank of Malaysia, and 11 other major Malaysian financial institutions are members of the PayNet Group, which owns and operates FPX. It’s one of the most popular online payment methods in Malaysia, with nearly 90 million transactions in 2018 according to BNM.
To pay with FPX, customers are redirected to their online banking environment where they have to perform two-step authorisation. The exact payment flow varies depending on the customer’s bank. The FPX payment flow is well understood and intuitive to Malaysian customers.
As part of being regulatory compliant, Stripe requires merchants to provide their Business Registration Number (BRN) to process FPX charges and receive payouts.
Payment flow
Customer selects FPX at checkout
Chooses bank and gets redirected
Customer enters account credentials
Customer completes authorization process
Customer gets notification that payment is complete
(Optional) Customer returns back to business’s site for payment confirmation
Get started
You don’t have to integrate FPX and other payment methods individually. If you use our front-end products, Stripe automatically determines the most relevant payment methods to display. Go to the Stripe Dashboard and enable FPX. To get started with one of our hosted UIs, follow a quickstart:
Other payment products
The following Stripe products also let you add FPX from the Dashboard:
If your integration requires manually listing payment methods, learn how to manually configure FPX as a payment.
Check out the FPX sample on GitHub.
Disputes
The risk of fraud or unrecognized payments is low because the customer must authenticate the payment with their bank. As a result, you won’t have disputes that turn into chargebacks, with funds withdrawn from your Stripe account.
Refunds
FPX payments can be refunded up to 60 days after the original payment. Refunds for FPX payments are asynchronous and take approximately 1 week to complete. We’ll notify you of the final refund status using the refund.
or refund.
webhook event. When a refund succeeds, the Refund object’s status transitions to succeeded
. A refund can fail if the customer’s bank is unable to process it correctly (for example, the bank account is closed). In the rare instance that a refund fails, the Refund object’s status transitions to failed
and we return the amount to your Stripe balance. You then need to arrange an alternative way of providing your customer with a refund.