Singapore Payments - SGD
Singapore operates one of the most advanced payment infrastructures in Asia. FAST (Fast and Secure Transfers) enables real-time 24/7 bank-to-bank payments up to 200,000 SGD, PayNow extends this with proxy-based transfers using everyday identifiers such as mobile numbers, UEN, NRIC, or FIN, and MEPS+ (MAS Electronic Payment System) provides real-time gross settlement for high-value transactions with no upper limit. Together, these rails give clients comprehensive coverage of Singapore domestic payment needs across all value segments across various use cases.
The payout methods below are available through the existing TransferMoney API. The primary change between methods is the payout_method value and the required fields for the target rail. NIUM handles rail selection, amount-based routing, and real-time status updates automatically. Refer to Payout Rail Preference if you are interested in selecting the payout rail. For up-to-date corridor capabilities, see the Singapore Playbook.
Supported Payment Methods
| Feature | FAST | MEPS+ | PayNow | GIRO | SWIFT |
|---|---|---|---|---|---|
| Payout Method | LOCAL | LOCAL | PROXY | LOCAL (automatic fallback) | SWIFT |
| Use Case | Bank account, real-time up to 200,000 SGD | Bank account, RTGS for amounts above 200,000 SGD | Proxy-based via mobile, UEN, NRIC, or FIN | Fallback for high-value transactions outside MEPS hours or when beneficiary address is not provided | International wires |
| Delivery | Realtime (24/7/365) | Near Real time subject to cutoff (business days) | Realtime (24/7/365) | Next business day | 1-2 business days |
| Cutoff | 24x7 | 19:00 SGT (Mon-Fri, excluding public holidays) | 24x7 | 13:30 SGT | Business days only |
| Transaction Limit | 1 to 200,000 SGD | Above 200,000 SGD (no upper cap) | 1 to 200,000 SGD | Above 200,000 SGD | No fixed limit |
| Routing Code | SWIFT BIC | SWIFT BIC | Not required | SWIFT BIC | SWIFT BIC |
Bank Account Payouts
When you send a bank account payout (payout_method = LOCAL) in SGD, NIUM automatically routes it based on the transaction amount and the fields you provide. You do not need to specify a rail.
- Up to 200,000 SGD — Routes via FAST. Funds settle in seconds, 24/7.
- Above 200,000 SGD, submitted on a business day before 19:00 SGT, with
beneficiary_addressandbeneficiary_cityincluded — Routes via MEPS+ (RTGS). Funds settle in near real time. - Above 200,000 SGD, submitted outside MEPS hours, or if
beneficiary_addressorbeneficiary_cityis missing — Falls back to GIRO. Funds settle on the next business day, subject to a 13:30 SGT cutoff.
To consistently get MEPS+ for high-value transactions, always include beneficiary_address and beneficiary_city in your request.
Required Fields - Bank Account Payouts
The table below covers fields that have SGD-specific requirements or affect rail routing. For the full list of required fields, refer to the TransferMoney API Reference.
| Field | Required | Validation | Notes |
|---|---|---|---|
payout_method | Yes | LOCAL | |
destination_currency | Yes | SGD | |
destination_amount | Yes | Min 1 SGD, max 2 decimal places | |
routing_code_type_1 | Yes | SWIFT CODE | SWIFT BIC of the receiving bank |
beneficiary_address | Conditional | Max 255 characters | Required for MEPS+ routing. If not provided, transactions above 200,000 SGD will fall back to GIRO (next business day) |
beneficiary_city | Conditional | Max 50 characters | Required for MEPS+ routing. If not provided, transactions above 200,000 SGD will fall back to GIRO (next business day) |
remit_purpose_code | Yes | Valid NIUM purpose code | See Purpose Codes |
Payout Lifecycle
SGD payouts follow the standard remittance lifecycle with additional SGD-specific status updates.
| Step | Status | Description | Step type |
|---|---|---|---|
| 1 | SCHEDULEDAWAITING_FUNDSCANCELLEDEXPIREDFAILEDINITIATEDRFI_REQUESTEDRFI_RESPONDEDCOMPLIANCE_COMPLETEDREJECTEDPG_PROCESSING | Standard payout lifecycle statuses. For definitions, see Track Payouts. | Generic |
| 2 | SENT_TO_BANK | The payment has been submitted to the FAST, MEPS+, or GIRO network for processing. | Country-specific |
| 3 | PAID | The beneficiary has been credited — in real time for FAST and MEPS+, or on the next business day for GIRO. | Country-specific |
| 4 | RETURN | The payout was returned by the receiving bank, for example due to an invalid account number or closed account. | Country-specific |
Webhooks and transaction status enquiry work the same for all SGD payout methods. For more information, see Payout Lifecycle.
PayNow (Proxy Payouts)
PayNow is Singapore's national payment alias system. It lets individuals and businesses register a mobile number, UEN, NRIC, or FIN as a payment alias linked to their bank account. You provide only the identifier — NIUM resolves it to the underlying account and routes the payment in real time.
This means you do not need to collect bank account numbers or routing codes from your payees. PayNow payouts settle in seconds, 24/7, and are well-suited for consumer disbursements, gig economy payouts, and B2B payments to SMEs with a registered UEN. If the proxy identifier is not registered or has been deregistered, the transaction fails before funds are moved.
Proxy Types and Format
| Proxy Type | proxy_type value | Format | Example |
|---|---|---|---|
| Mobile number | MOBILE | Country code +65 followed by 8 digits. The local number must begin with 8 or 9 | +6581234567 |
| UEN | UEN | 9 or 10 alphanumeric characters issued by ACRA. Format varies by entity type | 201912345A |
| NRIC | NRIC | 1 letter (S or T) followed by 7 digits and 1 check letter. S-series for citizens born before 2000, T-series from 2000 onwards | S1234567D |
| FIN | FIN | 1 letter (F or G) followed by 7 digits and 1 check letter. Issued to foreign residents holding Singapore long-term passes | F1234567N |
Required Fields - PayNow
The table below covers fields specific to PayNow. For the full list of required fields, refer to the TransferMoney API Reference.
| Field | Required | Validation | Notes |
|---|---|---|---|
payout_method | Yes | PROXY | |
destination_currency | Yes | SGD | |
destination_amount | Yes | 1 to 200,000 SGD | |
proxy_type | Yes | MOBILE, UEN, NRIC, or FIN | |
proxy_value | Yes | Max 255 characters | The registered PayNow identifier |
Return Codes
The following ISO return codes are the most common errors observed for SGD transactions.
| ISO Code | Reason | Resolution |
|---|---|---|
AC03 | Invalid creditor account number | Verify the beneficiary account number and SWIFT BIC. Confirm both belong to the same bank |
AC04 | Closed account number | Request updated account details from the beneficiary. Covers expired and closed accounts |
AM03 | Not allowed currency | Contact Nium support. This indicates a routing configuration issue |