Skip to main content
Money In Operation — Funds are transferred from the customer’s card to your SingaPay Payment Gateway account.

API Overview

API Version

v2.0

Base Path

/api/v2.0/card

Authentication

Bearer Token (JWT, OAuth 2.0 client credentials)

Content-Type

application/json

Authentication

Merchants must obtain a JWT access token before calling Card endpoints. See Authentication for token requests, required headers, and IP whitelist setup.

Base URL


Card Payment Flow


Transaction Status Lifecycle

1

pending

Awaiting 3DS (includes internal pre-submission state).
2

processing

Payment submitted, awaiting final result.
3

success

Payment completed successfully.
4

failed

Payment failed (issuer declined or error).
5

cancelled

Voided — transaction was not captured.
6

refunded

Refunded after capture.

Path Parameters


Available Endpoints

Payment (One-Time)

Process a one-time card payment (full or installment) in a single request with amount, customer info, and card data.

Cancel Transaction

Void or refund a transaction depending on its current status.

Inquiry Status

Check the latest transaction status and optionally update the local record.

Error Responses

HTTP Status Codes

Standard Error Format

All API responses follow the v2 format with response_code and response_message:

Response Codes


Appendix

Installment Type Reference

Installment Month Options

Transaction ID Format


Important Notes

Card payments are processed in a single API call that includes amount, customer info, and card data together — no pre-registration step required.
When the issuing bank requires 3DS, the payment response includes a payment_url or html_form field. Render this for the customer to complete authentication before the transaction finalises.
Transactions can be voided (before capture) or refunded (after capture) using the Cancel endpoint. Both return status: "success" — use the cancel_type field to distinguish which occurred.
Merchant API routes require IP whitelisting. Ensure your server IP is registered under the merchant account before going live.
Supports full payment and installment options (1, 3, 6, or 12 months) via the installment and installment_month request parameters.

Changelog