Code table
| Code | Failure reason | Message returned |
|---|---|---|
| 200 | Success | Success |
| 208 | Duplicate reference ID. The body carries httpStatus: false. | Reference ID Already Exist |
| 400 | A required parameter is missing from the call | Missing required parameter |
| 400 | The agent_id lacks the rights for this transaction_flag | The reason, in statusDescription |
| 401 | API key mismatch | Invalid API key |
| 405 | Invalid API call specified | Method Not Allowed |
| — | Concurrent licence limit reached | concurrent license limit reached (text only, no code) |
| 500 | Database or application syntax error | Internal Server Error |
| 502 | Server error | Bad Gateway |
| 503 | Server error | Service Unavailable |
| 504 | Server error | Gateway Timeout |
Read the body, not just the status
A duplicate reference is the trap here. It comes back as 208, which looks like success if you only check for a 2xx, but the body says otherwise:
{
"httpStatus": false,
"reference_id": "euat1000193723-1628134",
"status": {
"statusCode": 208,
"statusDescription": "Reference ID Already Exist"
}
}jsonreference_id must be new on every attempt, including a retry of a request that failed. Generate a fresh one and send again.
Agent rights errors
If the agent_id on a request doesn't have the rights for the transaction_flag you sent, Paytia returns a 400 with the reason in statusDescription. The agent can't go further until the rights are assigned.
{
"httpStatus": false,
"reference_id": "reference_id_is_number_144",
"status": {
"statusCode": 400,
"statusDescription": "The agent you are using doesn't have the right to use transaction type 3."
}
}jsonTo fix it, open the Paytia Administration Portal, go to Administer Users → Users and click Edit. Set Menu Rights for menu access and Licence Rights for the payment types each active licence allows.
Concurrent licence limit
Paytia checks active calls against the concurrent licence on your merchant account. When the limit is reached, the request returns the text concurrent license limit reached with no status code, so match on the message.
Still stuck?
Write to techsupport@paytia.com with the request you sent and the response you got. Exception handling →