Skip to contentFree 30 minute call with Pali

Payment integration guide

How do I add FPX and DuitNow payments to my website or app?

By Pali (Wan Muhamad Fadzli), product builder, Penang.

Last updated

To add FPX and DuitNow payments, connect your Malaysian website or app to a payment gateway that supports those methods, then build checkout, server-side confirmation and payment records around it. Pali's published payment integration rate is RM 450. Gateway fees, refunds, settlement needs, subscriptions and changes to your existing system are priced or paid separately.

How does an FPX and DuitNow payment integration work?

The integration sits between your checkout, a payment gateway and the system that stores the order or invoice. The gateway handles the payment method. Your website or app creates the payment request, sends the customer through the approved flow and waits for a validated result before recording payment.

Integration part What it does Decision to make
Checkout Collects the order, invoice and customer details needed for payment Which fields and payment methods the customer sees
Payment gateway Provides FPX, DuitNow QR or other enabled methods Which provider fits your account and operating needs
Payment reference Links the gateway transaction to your order or invoice Which internal record is the source of truth
Server confirmation Reports and validates the payment result Which statuses can update the order or invoice
Staff record Shows successful, pending, failed and refunded payments Which team reviews exceptions and settlements

The customer may return to a success or failure page after paying. Separately, the gateway sends a payment update to your server. The system validates that update, matches it to the correct record and changes the status only when the confirmation is valid.

Which payment flow should I add first?

Choose one flow with a clear amount, reference and owner. Practical first flows include:

  • paying a fixed order total at checkout;
  • paying an invoice from a unique payment link;
  • collecting a booking deposit or full payment;
  • marking an order paid after gateway confirmation;
  • sending a receipt or staff notification after payment;
  • showing staff when a payment remains pending or fails.

Start with one-time payments if they meet the business need. Saved payment methods, recurring charges, split payments and marketplace settlements add different account, data and exception requirements.

What should be decided before connecting a payment gateway?

Map the complete payment journey before development:

  1. Choose the gateway account your business will own.
  2. Confirm that the account offers FPX, DuitNow QR and any other required methods.
  3. Define the order or invoice record that owns each payment reference.
  4. List the statuses the gateway can send and what each status changes.
  5. Decide how pending, failed, duplicate and refunded payments appear to staff.
  6. Define the customer message, receipt and next step for every result.
  7. Set up test and live credentials outside the code repository.

If payment belongs to an online store, compare the e-commerce website cost guide. For a broader system build, read the app development cost guide.

What affects the scope of payment gateway integration?

  • Existing platform. A supported plugin, hosted checkout, custom website and mobile app need different work.
  • Payment flow. Orders, invoice links, deposits, full payments and recurring charges use different rules.
  • Business records. The integration must match each gateway transaction to the correct order, booking or invoice.
  • Payment states. Pending, successful, failed, expired, duplicate and refunded results need clear handling.
  • Connected systems. Receipts, accounting, e-invoice, inventory and staff notifications add workflows.
  • Testing. Test accounts, live credentials, return pages and server confirmations must be checked before launch.
  • Operations. Staff need a clear process for exceptions, refunds, transaction searches and settlement review.

The technical payment gateway connection uses RM 450. Gateway fees and other third-party charges stay on accounts you own and are paid by you at cost where possible. Extra checkout rules, migrations, dashboards and connected systems are priced by scope.

How should payment status and account ownership work?

Your internal order or invoice should keep the business record, while the gateway keeps the payment transaction. Store the references needed to match them without treating the browser return page as final confirmation. Staff should be able to see the current status, the gateway reference and any exception that needs review.

Keep the gateway account, settlement details and live credentials under your business. Limit access by role, separate test and live settings, and remove access when responsibilities change. Credentials should stay in protected environment settings, not in source code or public pages.

How do I plan a payment gateway integration?

  1. Describe the first payment journey in the project calculator, including the checkout, payment methods, record, confirmation and staff owner.
  2. Use the Discovery Sprint to check the provider account, API documentation, payment states, security, test flow and exceptions before agreeing a fixed scope.
  3. Test successful, pending, failed and duplicate attempts before launch, then monitor the first live transactions and staff handoff.

See how fixed-scope app development works before connecting FPX and DuitNow payments to your website or app.

Frequently asked questions

It can when the provider and account you choose offer both methods. Confirm the available payment methods, account requirements, settlement process and technical documentation with the provider before development starts. Your website or app then presents only the methods enabled for your account.

No. The technical integration uses the published RM 450 rate. Gateway setup, transaction, refund, settlement and other provider charges are separate and stay on an account your business controls. Confirm the provider's current terms directly before choosing it.

The gateway sends a server-to-server payment update, which your system validates before changing the order or invoice status. The customer-facing return page is useful for guidance, but it should not be the only proof that money was received.

Yes. After a valid payment confirmation, the system can mark the matching order or invoice as paid and trigger a receipt or staff notification. The reference fields, receipt content, retry rules and connection to accounting or e-invoice workflows are priced by scope.

Your business should own the gateway account, settlement details, credentials and transaction exports. Developers should receive only the access needed for setup and testing. Keep live credentials out of the code repository and agree how access will be removed or handed over.

Pali is not the right fit when your website platform already has a supported payment plugin or hosted checkout that meets the workflow. Use that simpler route unless you need custom order logic, internal records, automation or a connection the standard option cannot provide.

Price your own project

Get an RM price in two minutes with the calculator, or book a free 30 minute call.

Keep reading