Finmo uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a payin failed, etc.). Codes in the 5xx range indicate an error with Finmo's servers (these are quite rare).
A few 4xx errors that could be handled programmatically (e.g., a card is declined) include an error code that briefly explains the error reported.
HTTP Status Codes Summary
Status Code | Status | Description |
---|---|---|
200 | OK | Everything worked as expected. |
201 | CREATED | The request has been fulfilled and resulted in new resources being created. |
400 | BAD REQUEST | The request was unacceptable, often due to missing a required parameter. |
401 | UNAUTHORIZED | No valid API key was provided. |
402 | REQUEST FAILED | The parameters were valid but the request failed. |
403 | FORBIDDEN | The API key doesn't have permission to perform the request. |
404 | NOT FOUND | The requested resource doesn't exist. |
406 | NOT ACCEPTABLE | The parameters were valid but the values were not acceptable. |
409 | CONFLICT | The request conflicts with another request (perhaps due to using the same idempotent key). |
429 | TOO MANY REQUESTS | This status is returned when your client exceeds the allowed request limits, indicating a violation of our rate limits. To maintain compliance, we recommend reviewing your implementation and optimizing request frequency to align with our guidelines. Avoid making excessive requests in a short period and contact the support team for higher rate limits or further assistance. |
500, 502 | SERVER ERRORS | Something went wrong on Finmo's end. (These are quite rare.) |
503 | SERVER ERRORS | Something went wrong on Finmo's end. (These are quite rare.) |
499 | CLIENT DISCONNECTED | This status indicates that your client disconnected the request because our server or an external partner took longer than expected to respond. Since our server may have already processed the request, this is not a retriable action. Before attempting a retry, please contact Finmo to verify the transaction status. |
504 | GATEWAY TIMEOUT | Similar to the 499 status code, this occurs when our partner takes longer than expected to respond, causing our server to time out the request. As the payment may have been processed despite the timeout, this request should not be retried automatically. Please confirm the transaction status with Finmo before retrying to prevent duplicate payments. |
Note: Implement appropriate handling of the status codes in your integration. We recommend you to contact Finmo before retrying any payment-related requests that return a 499 or 504 status code.