Response Codes
Response Codes
Every Digital Money Movement response carries a response code and, in most cases, a sub-code. This
page explains how to read them and what to do about each one.
How to read a response
code: 0means success. Any other value means the request did not do what you asked.- The sub-code carries the detail.
4200tells you validation failed; the sub-code tells you
which field. - HTTP status and application code are separate signals. Read both. A
201with a
transferStatusofFailedis a real outcome, not a contradiction. - The Status column shows the transfer status each code produces:
Failed(something went
wrong in processing) orDeclined(the payout was refused). See
Transfer Status & Webhooks for how to handle each.
{
"responseDetails": [
{
"code": 4200,
"subCode": 940,
"description": "Invalid Transaction Amount"
}
]
}HTTP status codes
| Status | Meaning | What to do |
|---|---|---|
| 200 | Request processed. For a resubmitted transferIdentifier, the existing record is returned. | Read the application code in the body. |
| 201 | Created. The request was accepted. | Read transferStatus. |
| 202 | Accepted, pending retry (Standard Disbursements Flow). A downstream timeout occurred and Green Dot is retrying. | Do not resubmit. Look up the status until it is final. |
| 400 | Validation failed. | Fix the field named by the sub-code. Do not resubmit unchanged. |
| 401 | Unauthorized — token missing, expired, or out of scope. | Request a new access token and retry. Not a payout failure. |
| 403 | Forbidden — your program is not authorized for this operation. | Contact your Green Dot program manager. |
| 404 | Not found — the program, recipient profile, disbursement account, or card link does not exist. | Check your identifiers. |
| 500 | Internal server error. | Retry with the same transferIdentifier. |
| 503 | Service unavailable, or a timeout. | Retry with the same transferIdentifier. |
| 555 | Operation failed downstream (returned with code 4214). | Retry with the same transferIdentifier. |
Success and duplicate handling
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 0 | 0 | Success | Completed or Pending | None. |
| 4202 | 1502 | Record already exists | Existing status | You resubmitted a transferIdentifier that already exists. The existing transfer's status is returned. This is the expected result of a safe retry, not an error. |
Request and authentication
These reject the request itself. If a request-level check fails, no transfer is created.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 200 | — | Missing request ID | — | Send the request identifier header. |
| 350 | — | Request ID must be a GUID | — | Send a valid GUID. |
| 4200 | 945 | Invalid request ID | Failed | Send a valid GUID. |
| 4200 | 986 | Invalid request | Failed | The request could not be parsed. Check the JSON structure and content type. |
| 4236 | 1536 | Authentication failed | Failed | Request a new access token and retry. |
Recipient identity
Validation errors return HTTP 400. Fix the field, then resubmit with a new transferIdentifier.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 900 | Missing first name | Failed | Supply the first name. |
| 4200 | 901 | Missing last name | Failed | Supply the last name. |
| 4200 | 903 | Missing ZIP code | Failed | Supply the ZIP code. |
| 4200 | 906 | Invalid first name | Failed | Letters, hyphen, and space only; 2–35 characters. |
| 4200 | 907 | Invalid last name | Failed | Letters, hyphen, and space only; 2–35 characters. |
| 4200 | 910 | Invalid ZIP code | Failed | Must be 5 digits. |
| 4200 | 911 | Invalid address line 1 | Failed | Max 255 characters; check for unsupported characters. |
| 4200 | 912 | Invalid address line 2 | Failed | Max 255 characters; check for unsupported characters. |
| 4200 | 913 | Invalid state | Failed | Use a 2-character state code. |
| 4200 | 914 | Invalid city | Failed | Letters, hyphen, and space only; max 50 characters. |
| 4200 | 915 | Invalid country | Failed | Check the country value. |
| 4200 | 974 | Missing target customer identifier | Failed | Supply the destination identifier. |
| 4200 | 975 | Invalid target customer identifier | Failed | Check the destination identifier. |
| 4200 | 1000 | Missing receiver user profile details | Failed | The recipient identity payload is incomplete. |
| 4200 | 1001 | Missing receiver account details | Failed | The recipient card details are incomplete. |
Card details
Validation errors return HTTP 400. Fix the field, then resubmit with a new transferIdentifier.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 917 | Missing account number | Failed | Supply the card number in the encrypted payload. |
| 4200 | 918 | Missing expiry month | Failed | Supply the expiration month. |
| 4200 | 919 | Missing expiry year | Failed | Supply the expiration year. |
| 4200 | 921 | Invalid account number | Failed | Check the card number with the recipient. Do not resubmit the same value. |
| 4200 | 931 | Invalid CVV | Failed | Check the security code. |
| 4200 | 933 | Invalid expiry year | Failed | Check the year; the card may be expired. |
| 4200 | 934 | Invalid expiry month | Failed | Use a two-digit month. |
Transfer details
Validation errors return HTTP 400. Fix the field, then resubmit with a new transferIdentifier.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 924 | Invalid transfer ID | Failed | transferIdentifier must be a valid GUID. |
| 4200 | 925 | Missing transfer type | Failed | Supply transferType. |
| 4200 | 927 | Missing source link ID | Failed | Supply your disbursement account identifier. |
| 4200 | 929 | Invalid currency | Failed | Use USD. |
| 4200 | 930 | Invalid transaction description | Failed | Max 250 characters. |
| 4200 | 935 | Invalid transfer type | Failed | Use DisbursementExternal. |
| 4200 | 938 | Invalid source link ID | Failed | Check your disbursement account identifier against the value issued at onboarding. |
| 4200 | 940 | Invalid transaction amount | Failed | Check the amount format and that it is greater than zero. |
| 4200 | 948 | Invalid initiator | Failed | Check the initiator value, or omit it. |
| 4200 | 949 | Missing currency | Failed | Supply USD. |
| 4200 | 962 | Transaction amount is less than the fee amount | Failed | Increase the amount or review your fee configuration with your program manager. |
| 4200 | 965 | Transfer ID already exists with a different partner | Failed | Generate a new transferIdentifier. |
| 4200 | 994 | Missing transfer route | Failed | Supply the transferRoute object. |
| 4200 | 995 | Missing source transfer endpoint | Failed | Supply sourceTransferEndpoint. |
| 4200 | 996 | Missing target transfer endpoint | Failed | Supply targetTransferEndpoint. |
| 4200 | 997 | Missing card info | Failed | Supply the encrypted card data. |
| 4200 | 998 | Missing customer info | Failed | Supply the encrypted user data. |
Limits
The payout was refused because it would exceed a configured limit. Do not retry until the amount changes or the limit window resets.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 971 | Amount exceeds per-transaction limit | Declined | Reduce the amount, or discuss your limits with your program manager. |
| 4200 | 976 | Exceeds per-transaction limit count | Declined | Wait for the limit window to reset. |
| 4200 | 977 | Amount exceeds daily limit | Declined | Wait for the next day, or pace your batch. |
| 4200 | 978 | Exceeds daily limit count | Declined | Wait for the next day. |
| 4200 | 979 | Amount exceeds weekly limit | Declined | Wait for the limit window to reset. |
| 4200 | 980 | Exceeds weekly limit count | Declined | Wait for the limit window to reset. |
| 4200 | 981 | Amount exceeds monthly limit | Declined | Wait for the limit window to reset. |
| 4200 | 982 | Exceeds monthly limit count | Declined | Wait for the limit window to reset. |
| 4232 | 1532 | Per-transaction maximum amount reached | Declined | Reduce the amount. |
| 4233 | 1533 | Daily load amount exceeded | Declined | Wait for the next day. |
| 4234 | 1534 | Amount below the per-transaction minimum | Declined | Increase the amount. |
| 4235 | 1535 | Monthly load amount exceeded | Declined | Wait for the limit window to reset. |
| 4237 | 1537 | Program daily limit reached | Declined | Wait for the next day. Contact your program manager if this recurs. |
| 4238 | 1538 | Per-transaction maximum amount reached | Declined | Reduce the amount. |
| 4239 | 1539 | Amount below the program minimum | Declined | Increase the amount. |
| 4240 | 1540 | Recipient's monthly transaction limit reached | Declined | Wait for the limit window to reset. |
| 4241 | 1541 | Per-transaction maximum for this transaction type reached | Declined | Reduce the amount. |
| 4242 | 1542 | Amount below the minimum for this transaction type | Declined | Increase the amount. |
| 4273 | 1573 | Card network limit exceeded | Declined | Wait for the limit window to reset. |
Card and account eligibility
The recipient's card cannot receive this payout. In most cases, ask the recipient for a different debit card.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 987 | Account not eligible | Failed | Ask the recipient for a different debit card. |
| 4223 | 1523 | No default account defined for the recipient | Declined | Check the destination details. |
| 4224 | 1524 | Card type not supported | Declined | Ask the recipient for an eligible debit card. |
| 4229 | 1529 | Card declined | Declined | The issuer declined. Ask the recipient for a different card. |
| 4231 | 1531 | Card expired | Declined | Ask the recipient for current card details. |
| 4243 | 1543 | Account type not supported for this program | Declined | Ask the recipient for a different card. |
| 4244 | 1544 | Program not enabled for the network required to reach this card | Declined | Ask for a card on a different network, or contact your program manager. |
| 4245 | 1545 | Currency not supported for the account | Declined | Only USD is supported. |
| 4246 | 1546 | Country not supported for the account | Declined | The card cannot be reached. Ask for a US-issued debit card. |
| 4247 | 1547 | Transaction declined | Declined | Look up the transfer for detail before contacting support. |
| 4265 | 1565 | Load not allowed | Declined | The card cannot accept this payout. Ask for a different card. |
Compliance and fraud
Route blocks to your compliance or fraud process rather than a retry queue.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 985 | Unable to verify recipient OFAC status at this time | Failed | Temporary. Retry later with the same transferIdentifier. |
| 4200 | 989 | Recipient is OFAC blocked | Declined | Route to your compliance process. Do not retry. |
| 4200 | 990 | Recipient is an OFAC partial match | Declined | Route to your compliance process. Do not retry. |
| 4230 | 1530 | Fraud detected | Declined | Route to your fraud process. Do not retry. |
Program and configuration
These indicate a setup issue with your program rather than a problem with the individual payout.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 916 | Missing program code | Failed | Supply {programCode} in the path. |
| 4200 | 943 | Invalid program code | Failed | Check your program code. |
| 4200 | 966 | Business account status is pending | Failed | Your disbursement account is not yet active. Contact your program manager. |
| 4216 | 1516 | No payment type configured for this program | Failed | Contact your program manager. |
| 4217 | 1517 | Configured payment type not supported | Failed | Contact your program manager. |
| 4219 | 1519 | No payment processor enabled for this program | Failed | Contact your program manager. |
| 4220 | 1520 | Program configuration not available | Failed | Contact your program manager. |
| 4222 | 1522 | Unauthorized access to Mastercard Send | Failed | Contact your program manager. |
| 4225 | 1525 | Operation not allowed | Failed | Check the operation against your program configuration. |
| 4226 | 1526 | Country not supported | Failed | Not retryable. |
| 4227 | 1527 | Acquiring credential no longer valid | Failed | Contact your program manager. |
| 4250 | 1550 | Unauthorized access to Visa Direct | Failed | Contact your program manager. |
| 4258 | 1558 | Program code not found | Declined | Check your program code. |
| 4272 | 1572 | Invalid merchant | Failed | Contact your program manager. |
System errors
Temporary or internal errors. Most can be retried with the same transferIdentifier once the issue clears.
| Code | Sub-code | Description | Status | Resolution |
|---|---|---|---|---|
| 4200 | 952 | Missing transaction reference | Failed | Retry with the same transferIdentifier. |
| 4200 | 953 | Invalid transaction reference | Failed | Retry with the same transferIdentifier. |
| 4200 | 954 | Missing sender profile details | Failed | Contact Green Dot support. |
| 4200 | 955 | Missing sender account details | Failed | Check your disbursement account identifier. |
| 4200 | 960 | Invalid account identifier | Failed | Check the identifiers in your request. |
| 4200 | 983 | Missing processor | Failed | Contact Green Dot support. |
| 4200 | 984 | Invalid processor | Failed | Contact Green Dot support. |
| 4214 | 1514 | System error | Failed | Retry with the same transferIdentifier. |
| 4221 | 1521 | All payment processors unavailable | Failed | Retry with the same transferIdentifier after a delay. |
| 4249 | 1549 | Transaction failed | Failed | Investigate, then send a new payout with a new transferIdentifier. |
| 4252 | 1552 | Transaction failed due to a system error | Failed | Retry with the same transferIdentifier. |
| 4254 | 1554 | Duplicate adjustment identifier | Declined | Contact Green Dot support with your request identifier. |
| 4260 | 1560 | Invalid input | Failed | Check the request body. |
| 4261 | 1561 | Missing input value | Failed | Supply the missing field. |
| 4262 | 1562 | Duplicate value | Failed | Check the request for a repeated identifier. |
| 4274 | 1574 | Rejected by the card network due to a message validation error | Failed | Contact Green Dot support with your request identifier. |
When you need help
If a payout fails in a way this page does not explain, contact Green Dot support with:
- The request identifier you sent (
X-GD-RequestIdorRequest-ID) - The
transferIdentifier - The full response body, including
code,subCode, anddescription - The approximate time of the request, in UTC
With those four details, most investigations are resolved on the first exchange.
Updated about 23 hours ago
