Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
No-code
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Support
Overview
Online payments
Products and prices
Invoicing
Subscriptions
Quotes
In-person payments
Multiparty payments
After the payment
Add payment methods
    Overview
    Payment method integration options
    Bank debits
    Bank redirects
      Bancontact
      BLIK
      EPS
      FPX
        Accept a payment
      giropay
      iDEAL
      Przelewy24
      Sofort
    Bank transfers
    Buy now, pay later
    Credit transfers (Sources)
    Real-time payments
    Vouchers
    Wallets
Payment Links
Stripe Checkout
Stripe Elements
About the APIs
Regulation support
Implementation guides
Testing
HomePaymentsBank redirects

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.

In order to pay with FPX, customers are redirected to their online banking environment where they have to perform two-step authorization. The exact customer experience varies depending on their bank. The FPX payment flow is well understood and intuitive to Malaysian customers.

  • Customer locations

    Malaysia

  • Presentment currency

    MYR

  • Payment confirmation

    Customer-authenticated

  • Payment method family

    Authenticated bank debit

  • Recurring payments

    No

  • Refunds / Partial refunds

    Yes / yes

  • Dispute support

    No

  • Connect support

    Yes

  • Payout timing

    5 business days

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

We recommend you use Checkout or the Payment Element so you can automatically add FPX and other payment methods from the Stripe Dashboard, without changing your code. Stripe then determines the list of supported payment methods to show each customer by evaluating the currency, payment method restrictions, and other parameters.

The following Stripe products also support adding FPX from the Dashboard:

  • Invoicing
  • Payment Links

If your integration requires manually listing payment methods, learn how to manually configure FPX as a payment.

Check out the FPX sample on GitHub.

Disputed payments

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 charge.refund.updated 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 will transition to failed and we’ll return the amount to your Stripe balance. You’ll then need to arrange an alternative way of providing your customer with a refund.

Was this page helpful?
Questions? Contact us.
Watch our developer tutorials.
Check out our product changelog.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Payment flow
Get started
Disputed payments
Refunds
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Login to your Stripe account and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$