response_code field that indicates whether your API request was received and processed correctly by the server.
For example, a disbursement request may return response_code: "SP000" (request accepted successfully) while the payment itself is still "Initiated" — the money has not moved yet. Conversely, a webhook may arrive with response_code: "SP001" to notify you that a previously accepted transaction has now failed at the provider.
Response format
Response code dictionary
Each code below describes a request-level outcome — not the state of the payment or transfer.Success
Transaction request errors
Lookup errors
Authentication & authorization errors
Request errors
HTTP status code mapping
Singapay REST API endpoints also return standard HTTP status codes. Here is how they map to common scenarios:v2 endpoints (Card, E-Wallet Native v2, Disbursement v2, QRIS Issuer) return both an HTTP status code and an
SP response code in the body. Always check the response_code field for the definitive result.Handling response codes
1
Check the response code
Parse
response_code from the JSON body. SP000 means the request was accepted — proceed to check the transaction_status for the actual payment outcome.2
Handle known errors
Match against the tables above. Errors like
SP003 (insufficient balance) or SP004 (duplicate reference) have clear resolutions.3
Handle known request errors
Match against the tables above. Errors like
SP003 (insufficient balance) or SP004 (duplicate reference) have clear resolutions.4
Don't confuse request success with payment success
SP000 confirms the server accepted your request. The payment may still be Initiated, Paying, or Pending. Always read the transaction_status object or wait for the webhook callback to determine the final payment outcome. See Transaction Status for the full lifecycle.5
Use inquiry-status for uncertain outcomes
For
SP001, SP002, and SP005, the transaction may still be in progress. Call the relevant inquiry-status endpoint before retrying.6
Contact support for persistent errors
If
SP007, SP017, or SP019 persists, contact Singapay support with the full request and response payloads.