Error Handling
Detect and respond to exceptions, invalid data, network problems and more.
Supported HTTP status codes
HTTP status codes can reflect successful and failed statuses including: missing fields, network interruptions, code problems or invalid API calls. MoneyGram supports the following HTTP status codes:
HTTP method | Http status | Description |
---|---|---|
POST, PUT, PATCH | 200 - OK | The server successfully processed the request. The response will contain an entity describing or containing the result of the action. |
GET | 200 - OK | The server successfully processed the request.. The response will contain an entity corresponding to the requested resource. |
GET | 204 - No Content | The server successfully processed the request and is not returning any content. |
POST, PUT, PATCH, GET | 400 - Bad Request | The server cannot or will not process the request due to an apparent client error. The response payload will include “ErrorDetails” object to indicate the issue with the request payload. This may indicate a system error, business error or malformed request syntax. |
POST, PUT, PATCH, GET | 500 - Internal Server Error | The server cannot process the request. |
Types of errors and responses
Partner applications can react to the following error categories by collecting missing data or correcting the invalid data before resubmitting the request payload:
Category code | Error description |
---|---|
20000 | RECOVERABLE_BUSINESS_ERROR |
30000 | UNRECOVERABLE_BUSINESS_ERROR |
40000 | MISSING_FIELD_ERROR |
45000 | MALFORMED_FIELD_VALUE |
50000 | UNRECOVERABLE_SYSTEM_ERROR |
Top Error Code and Messages
Code | Message |
---|---|
100 | One or more required fields missing |
160 | One or more required fields missing/invalid field values. |
302 | You have reached your daily limit. Please contact Servicing via chat or email. |
315 | Delivery option not allowed for receive country. |
323 | Field contains too many characters. |
328 | Field does not match regular expression. |
604 | Invalid reference number, please contact sender. |
605 | Send reversal/cancel must be requested same day. |
1010 | Invalid Account. |
3022 | No matching receiver bank information found. |
3544 | Photo identification (ID) is expired. Please provide current photo identification in order to complete this transaction. |
4017 | Transaction cannot be amended due to holds. |
4025 | Send Limit Exceeded. |
4036 | This transaction is not currently available. Please inform the receiver contact MoneyGram customer service for assistance. |
4055 | MoneyGram has rejected this transaction to protect the consumer. Do not collect funds. |
4146 | Country code is required. |
4215 | Name fields cannot begin with a special character. |
9141 | Wallet has reached maximum balance. It cannot accept more funds. |
9301 | Invalid account number. |
Error details examples:
//RECOVERABLE_BUSINESS_ERROR
{
"errors": [
{
"category": "IP-20000",
"code": "604",
"message": "Invalid reference number, please contact sender",
"offendingFields": []
}
]
}
//UNRECOVERABLE_BUSINESS_ERROR
{
"errors": [
{
"category": "IP-30000",
"code": "4055",
"message": "MoneyGram has rejected this transaction to protect the consumer. Do not collect funds.",
"offendingFields": []
}
]
}
//MISSING_FIELDS_ERROR
{
"errors": [
{
"category": "IP-40000",
"code": "100",
"message": "One or more required fields missing",
"offendingFields": [
{
"field": "sender.firstName"
},
{
"field": "sender.lastName"
},
{
"field": "sender.address.line1"
},
{
"field": "sender.address.countryCode"
},
{
"field": "sender.primaryIdentification.typeCode"
},
{
"field": "sender.primaryIdentification.id"
},
{
"field": "sender.occupationCode"
}
]
}
]
}
{
"errors": [
{
"category": "IP-45000",
"code": "3416",
"message": "Mobile Phone is required to choose Text as a notification type. Please provide a mobile phone number or change notification selection",
"offendingFields": [
{
"field": "sender.mobilePhone.number",
},
{
"field": "sender.preferences.smsOptIn"
}
]
},
{
"category": "MO-45000",
"code": "1037",
"message": "Phone Number format is invalid.",
"offendingFields": [
{
"field": "sender.mobilePhone.number"
}
]
},
{
"category": "MO-45000",
"code": "381",
"message": "Invalid phone number, special characters are not allowed - please correct and reenter.",
"offendingFields": [
{
"field": "sender.mobilePhone.number",
}
]
}
]
}
//SYSTEM_ERROR
{
"errors": [
{
"category": "IP-50000",
"code": "955-20001",
"message": "Internal System Error",
"offendingFields": []
}
]
}
Updated about 1 month ago