Error Codes & Handling
Error Code Reference
This page documents all known error codes returned by the Green Dot BaaS APIs. Use Ctrl+F (or Cmd+F) to search for a specific error code, sub code, or API name.
How to Read This Reference
Green Dot's API returns two distinct layers of error information:
-
http_status— the HTTP response code (e.g.400,404,503). Use this for transport-level handling. -
error_code— the business-layer code returned inresponseDetails.codeof the response body. This is the primary code to use for programmatic error handling. Note:error_codevalues are independent of HTTP status codes — for example, anerror_codeof404may be returned with anhttp_statusof400. Always parse both. -
sub_code— the value inresponseDetails.subCode. Provides additional granularity within an error class. May not be present for all errors.
// Example response body
{
"responseDetails": [
{
"code": 404,
"subCode": 1205,
"description": "Record Not Found"
}
]
}Authentication
Authentication
POST /authentication
Authenticates a partner or cardholder session.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
| — | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Account Management
CreateAccountEvent
POST /programs/{programCode}/accounts/{accountIdentifier}/accountEvents
Creates a lifecycle event on an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateSwitchAttempt
POST /programs/{programCode}/accounts/{accountIdentifier}/directdeposit/switches
Initiates a card network switch attempt for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
954 | — | 400 | Account verification error | |
500 | 621 | 503 | Request to backend failed. | Backend request failed. Retry after a brief delay. If persistent, contact Green Dot support. |
GetAccount
GET /programs/{programCode}/accounts/{accountIdentifier}
Retrieves account details for the specified account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct and the account is active. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetAccountFees
GET /programs/{programCode}/accounts/{accountIdentifier}/feeSummary
Returns fee information associated with an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
5030 | — | 503 | A downstream provider did not return success for Get Account Fees. | Downstream fee retrieval failed. Retry after a brief delay. If persistent, contact Green Dot support. |
GetAccountForShowcase
GET /programs/{programCode}/accounts/{accountIdentifier}/getAccountForShowcase
Returns account data formatted for display in a partner showcase.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetBankEligibility
GET /programs/{programCode}/transfers/routingNumbers/{routingNumber}
Returns bank eligibility status for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetCollectionAccountStatusHistory
GET /programs/{programCode}/accounts/{accountIdentifier}/collectionAccountStatusHistory
Returns the collections status history for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetRulesByAccountId
GET /programs/{programCode}/accounts/{accountIdentifier}/ammRule/noInactive
Returns spending rules configured for the specified account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | No rule found for account {accountIdentifier}. | No spending rules are configured for this account. This is an expected response when no rules exist — handle gracefully in your application. |
503 | — | 503 | Success | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Expected response: A
404witherror_code: 10is a normal response when no spending rules have been configured for an account. Handle it as an empty state rather than an error.
GetRulesByTargetAccountId
GET /programs/{programCode}/accounts/{accountIdentifier}/ammRuleByTargetAccount/All
Returns spending rules targeting the specified account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | No rule found for account {accountIdentifier}. | No spending rules are configured for this target account. Handle this as an expected 'no rules' state rather than an error. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Expected response: A
404witherror_code: 10is a normal response when no spending rules target this account. Handle it as an empty state rather than an error.
GetUserCategorySummary
GET /programs/{programCode}/accounts/{accountIdentifier}/userCategory/summary
Returns a summary of the user category classification for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
SccEligibilitiesCheck
GET /programs/{programCode}/users/USERIDENTIFIER/sccEligibilities
Checks whether an account is eligible for SCC services.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
1301 | 1001 | 503 | SCC account {accountIdentifier} is in collection | The account is in collections status. No further transactions can be processed. The cardholder must resolve their collections account to restore service. |
On
error_code: 1301 / sub_code: 1001: This is returned when an account has an active collections status. This is a business-state response, not a system error. No retry is needed — the cardholder must resolve their collections status before service can be restored.
SearchAccount
POST /programs/{programCode}/accounts/search
Searches for an account by identity or mapping attributes.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
200 | — | 400 | Object must include data. | |
350 | — | 400 | DateOfBirth is invalid. | |
50 | — | 406 | An encrypted data block on the payload was not decrypted successfully. | Payload decryption failed. Verify the request body is correctly encrypted with the current PCI encryption key and that the key version matches. |
500 | — | 500 | Failed call FindToken | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
SetUserCategory
PUT /programs/{programCode}/accounts/{accountIdentifier}/userCategory
Sets the category classification for a user.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateAccount
PUT /programs/{programCode}/accounts/{accountIdentifier}
Updates mutable fields on an account record.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateSwitchAttempt
PATCH /programs/{programCode}/accounts/{accountIdentifier}/directdeposit/switches/{switchIdentifier}
Updates the status of an existing card network switch attempt.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Enrollment & Registration
CompleteRegistration
POST /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments
Completes the final step of a card registration flow.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 5012 | 400 | Mapping Identifier is already in use | Mapping identifier is already in use. Verify the customer does not have an existing account with this identifier. |
10 | — | 404 | Object reference not set to an instance of an object. | Required parameter is null. Verify all required fields are included in the request. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | 312 | 503 | Unable to upgrade temp to perso card | Card upgrade from temp to permanent failed. Verify the card is eligible for upgrade and retry. |
4503 | — | 503 | Account status is not healthy | Account status is not in a healthy state to complete registration. Verify the account status before retrying. |
CreateCustomerProfile
POST /programs/{programCode}/externalAccounts/customers
Creates or updates a customer profile with identity and address information.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
4200 | 905 | 400 | Invalid Phone Number: over max length. | Phone number exceeds maximum length. Ensure the phone number is in a valid format (e.g. E.164) and does not exceed 15 digits. |
4200 | 906 | 400 | Invalid first name value was specified. | First name format is invalid. Remove special characters and ensure the value meets naming requirements. |
4200 | 907 | 400 | Invalid last name value was specified. | Last name format is invalid. Remove special characters and ensure the value meets naming requirements. |
4200 | 911 | 400 | Invalid Address Line 1: invalid format or value. | Address Line 1 format is invalid. Ensure the address uses standard characters and follows the required format. |
4200 | 914 | 400 | Invalid City: invalid format or value. | City format is invalid. Ensure the city name uses only letters and standard punctuation. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateEnrollment
POST /programs/{programCode}/enrollments
Creates a new cardholder enrollment.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
200 | — | 400 | Either (ssnSuffix or ssn or onboardingId or identityValue) and dateOfBirth must be provided for KYC. | SSN or identity information is required for KYC. Include either ssnSuffix, ssn, onboardingId, or identityValue along with dateOfBirth. |
200 | — | 400 | Account is required. | |
260 | — | 400 | SSN limit check failed | SSN has exceeded the enrollment limit. Contact Green Dot support if this is unexpected. |
350 | — | 400 | IdentifyingData.Ssn must be exactly 9 digits. | SSN must be exactly 9 digits. Remove any hyphens, spaces, or non-numeric characters. |
400 | 505 | 400 | Address Line 1 must be 40 or fewer characters. | Address Line 1 must be 40 or fewer characters. Truncate the address string before submitting. |
400 | 5012 | 400 | Mapping Identifier is already in use | This mapping identifier is already registered to an existing account. Check if the customer is already enrolled before retrying, or use a different identifier. |
600 | — | 400 | Invalid IdentityType value. | IdentityType value is not recognized. Use a valid enum value for identityType (e.g., 'SSN', 'ITIN'). |
620 | — | 400 | termsAcceptanceDateTime must be within 1440 hours of the time it was submitted | Terms acceptance timestamp is outside the allowed window. Ensure termsAcceptanceDateTime is within 1440 hours (60 days) of submission. |
640 | 501 | 400 | FirstName has invalid character or length. | First name contains invalid characters or exceeds length limits. Validate that firstName contains only letters, hyphens, and spaces, and is between 1–40 characters. |
640 | 502 | 400 | LastName has invalid character or length. | Last name contains invalid characters or exceeds length limits. Validate that lastName contains only letters, hyphens, and spaces, and is between 1–40 characters. |
640 | 503 | 400 | MiddleName has invalid character or length. | Middle name contains invalid characters or exceeds length limits. Validate that middleName contains only letters, hyphens, and spaces, and is between 1–40 characters. |
640 | 505 | 400 | Invalid character in user data. | User data contains an invalid character. Sanitize all name and address fields to remove special characters before submitting. |
700 | — | 400 | DOB is invalid; the minimum age must be 18. | Cardholder does not meet the minimum age requirement of 18 years. Verify the dateOfBirth value and ensure the format is correct (YYYY-MM-DD). |
760 | — | 400 | Invalid SSN. | SSN is invalid. Verify the SSN is exactly 9 digits and does not contain hyphens or spaces. |
1042 | 31001 | 400 | Country code is not a valid 3-character upper-case code. | Country code must be a valid 3-character ISO code (e.g., 'USA'). Update the country code to the correct format. |
1042 | 31006 | 400 | ZIP code does not belong to the specified state. | ZIP code does not match the provided state. Verify the ZIP code and state combination is valid. |
1042 | 31007 | 400 | PO Box addresses are not allowed. | PO Box addresses are not allowed. Use a physical street address. |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | A required parameter value is null. | A required input value is null. Verify all required fields are populated in the request. |
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls. |
500 | 1560 | 500 | Internal server error — database connection failure. | Database connectivity error during enrollment. Retry after a brief delay. If persistent, contact Green Dot support. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
4506 | — | 503 | Account already upgraded successfully | Account has already been upgraded — no retry needed. Check account status before resubmitting enrollment. |
5030 | — | 503 | A downstream provider did not return success for OrderPhysicalCard. | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Validation errors (
error_code: 640): Sub codes501,502, and503correspond to first name, last name, and middle name validation failures respectively. Validate all name fields before submission — they must contain only letters, hyphens, and spaces with no leading/trailing punctuation.
Country/ZIP validation (
error_code: 1042): Sub codes31001,31006, and31007relate to address compliance. Ensure country codes are ISO 3166-1 alpha-3 (e.g.USA), ZIP codes match the provided state, and physical street addresses are used (no PO Boxes).
CreateSccEnrollment
POST /programs/{programCode}/enrollments/scc
Enrolls an account in SCC services.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetEnrollment
GET /programs/{programCode}/enrollments/accounts/{accountIdentifier}
Retrieves enrollment details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
607 | — | 400 | A downstream provider did not return success for GetAccountBalance — ACI API failure. | A downstream balance check failed. Retry after a brief delay. If persistent, contact Green Dot support. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | A downstream provider did not return success for GetAccountBalance. | Downstream balance check unavailable. Retry after a brief delay. If persistent, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetEnrollmentTypeByMappingIdentifier
GET /programs/{programCode}/enrollments/enrollmentTypeByMappingIdentifier
Looks up the enrollment type associated with a mapping identifier.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 5020 | 400 | Mapping Identifier is not found | Mapping identifier not found. Verify the identifier exists and is associated with an active enrollment. |
Users & Profile
GetConsumerProfileExtension
GET /programs/{programCode}/users/USERIDENTIFIER/consumerProfileExtension
Returns extended consumer profile data for a user.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | A transport-level error occurred receiving results from the server. | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateBusinessProfile
PUT /programs/{programCode}/accounts/{accountIdentifier}/businessProfile
Updates business profile information for a commercial account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 505 | 400 | BusinessAddressLine1 min or max length |
UpdateDevice
PUT /programs/{programCode}/updateDeviceVerification
Updates device registration information for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | — | 400 | Device Update Fail |
UpdateUser
PUT /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER
Updates user profile fields for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
5 | 69 | 400 | User update request is not valid. | |
400 | — | 400 | The format of the request field is invalid. | A request field has an invalid format. Verify all field values match the expected format in the API specification. |
400 | 505 | 400 | Address field min or max length exceeded. | Address field length is outside allowed range. Ensure addressLine1 is between 1–40 characters and does not contain invalid characters. |
640 | 505 | 400 | Invalid character in user data. | User data contains an invalid character. Sanitize all fields to remove special characters before submitting. |
640 | 506 | 400 | Invalid character in user data. | User data contains an invalid character. Sanitize all fields to remove special characters before submitting. |
750 | — | 400 | Invalid email format. | |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
50 | — | 406 | An encrypted data block on the payload was not decrypted successfully. | Payload decryption failed. Verify the request body is correctly encrypted with the current PCI encryption key and that the key version matches. |
520 | 630 | 409 | Mailed card must be activated | The cardholder's card must be activated before account details can be updated. Direct the cardholder to activate their card, then retry. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
5030 | — | 503 | A downstream provider did not return success for UpdateUser. | Downstream user update failed. Retry after a brief delay. If persistent, contact Green Dot support. |
5100 | 5502 | 503 | A downstream provider did not return success. | Downstream update failed. Retry after a brief delay. If persistent, contact Green Dot support. |
Cards & Payment Instruments
ActivateCard
POST /programs/{programCode}/accounts/{accountIdentifier}/activateCard
Activates a payment instrument.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
5030 | — | 503 | A downstream provider did not return success for ActivateCard. | Downstream activation failed. Verify the card is in notActivated status before retrying. |
CancelCustomCard
DELETE /programs/{programCode}/userIdentifiers/USERIDENTIFIER/customCard
Cancels a pending custom card design request.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
350 | — | 400 | The format of userIdentifier is invalid. |
CreateCustomCard
POST /programs/{programCode}/userIdentifiers/USERIDENTIFIER/customCard
Initiates a custom card design request.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
350 | — | 400 | The format of userIdentifier is invalid. |
CreatePushProvisionData
POST /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/PushProvisionData
Creates provisioning data for a digital wallet push-provisioning flow.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateWalletPushProvision
POST /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/walletPushProvision
Creates a wallet push-provisioning request.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
GenerateBarcode
POST /programs/{programCode}/accounts/{accountIdentifier}/barcodes
Generates a cash-load barcode for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
950 | 601 | 500 | System Error | Barcode generation system error. Retry after a brief delay. If persistent, contact Green Dot support. |
GetAllExternalCards
GET /programs/{programCode}/accounts/{accountIdentifier}/externalcards
Returns all external cards linked to an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetCardEmbossingInfo
GET /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/deliveryStatus
Returns embossing and mailing status information for a card.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
205 | 1001 | 400 | The user doesn't have any payment Identifier | No payment instrument found for this user. Verify the user has an associated card before requesting embossing info. |
205 | 1002 | 400 | Account Status is Closed | Account is closed. Verify the account is in an active state before requesting card embossing info. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetCustomCard
GET /programs/{programCode}/userIdentifiers/USERIDENTIFIER/getCustomCard
Returns custom card design details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
350 | — | 400 | The format of userIdentifier is invalid. |
GetPaymentInstrument
GET /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}
Returns details for a payment instrument (card) associated with an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
2100 | — | 400 | The system failed to successfully encrypt the payload | |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Payment instrument not found. Verify the paymentInstrumentIdentifier is correct. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
5030 | — | 503 | A downstream provider did not return success for GetCardDetails. | Downstream card details retrieval failed. Retry after a brief delay. If persistent, contact Green Dot support. |
GetPaymentInstrumentTokenList
GET /programs/{programCode}/accounts/{accountIdentifier}/tokens
Returns token identifiers associated with a payment instrument.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
ReplaceCardEligibility
GET /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/replaceCardEligibility
Checks whether a card is eligible for replacement.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
SetPin
PUT /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}
Sets or updates the PIN for a payment instrument.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 402 | 400 | No migration records found | No migration records found. Verify the account has been migrated before attempting PIN set. |
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
5030 | — | 503 | A downstream provider did not return success for SetPin. | Downstream PIN set failed. Retry after a brief delay. If persistent, contact Green Dot support. |
SingleCommit
POST /programs/{programCode}/transfers/singlecommit
Commits a single card order with cardholder name and expiration data.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
4200 | 907 | 400 | Invalid last name value was specified. | Last name on card is invalid. Ensure cardInfoLastName contains only valid characters and meets minimum length. |
4200 | 933 | 400 | Invalid CardData.Expiration.Year | Card expiration year is invalid. Verify the card expiration year is in the future and in the correct format. |
4200 | 934 | 400 | Invalid CardData.Expiration.Month | Card expiration month is invalid. Verify the card expiration month is between 1 and 12. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateCardStatus
PUT /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/lifecycleEvent
Updates the status of a payment instrument (e.g., suspend, close).
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
205 | 1002 | 400 | Account status is not healthy | Account status does not allow this update. Verify the account is in a healthy state before updating card status. |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
UpdatePaymentInstrument
PUT /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/lifecycleEvent
Updates mutable fields on a payment instrument.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Payment instrument not found. Verify the paymentInstrumentIdentifier is correct. |
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
5030 | — | 503 | A downstream provider did not return success for UpdatePaymentInstrument. | Downstream payment instrument update failed. Retry after a brief delay. If persistent, contact Green Dot support. |
ValidateCard
POST /programs/{programCode}/ValidateCard
Validates a card's status and eligibility.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Account Not Found. | Account not found. Verify the account identifier is correct. |
50 | — | 406 | An encrypted data block on the payload was not decrypted successfully. | Payload decryption failed. Verify the request body is correctly encrypted with the current PCI encryption key and that the key version matches. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Purses
CreatePurse
POST /programs/{programCode}/accounts/{accountIdentifier}/purses
Creates a new purse on an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
600 | — | 400 | Invalid purseType | Invalid purseType value. Verify the purseType is a valid enum value per the API specification. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
GetPurses
GET /programs/{programCode}/accounts/{accountIdentifier}/purses
Returns purse (sub-account) details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdatePurse
PUT /programs/{programCode}/accounts/{accountIdentifier}/purses/{purseIdentifier}
Updates fields on an existing purse.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
Transactions
GetCategoriedTransaction
GET /programs/{programCode}/accounts/{accountIdentifier}/userCategory
Returns categorized transaction details.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetRelatedTransactions
GET /programs/{programCode}/accounts/{accountIdentifier}/transactions/relatedTransactions
Returns transactions related to a specified transaction.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetTransactionPagination
GET /programs/{programCode}/accounts/{accountIdentifier}/transactions/pagination
Returns a paginated set of transactions for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetTransactions
GET /programs/{programCode}/accounts/{accountIdentifier}/transactions
Returns the transaction history for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
200 | — | 400 | X-GD-RequestId is required. | |
700 | — | 400 | Start date or End date not formatted correctly | Date format is incorrect. Ensure start and end dates are in the correct format (YYYY-MM-DD or ISO 8601). |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
SearchTransactions
GET /programs/{programCode}/accounts/{accountIdentifier}/searchTransactions
Searches transactions by criteria for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Transfers
AssessACHTransfer
POST /programs/{programCode}/transfers/assessment/ach
Assesses eligibility and fees for an ACH transfer before execution.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
AssessMrdcTransfer
POST /programs/{programCode}/transfers/assessment/mrdc
Assesses eligibility for a mobile remote deposit capture transfer.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
AssessTransfer
POST /programs/{programCode}/transfers/assessment
Assesses eligibility and fees for a transfer before execution.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateACHTransfer
POST /programs/{programCode}/transfers/ach
Creates an ACH transfer to or from an external bank account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
200 | 204 | 400 | targetTransferEndpoint.bankAccount LastName must be specified | Bank account last name is required. Include the lastName field for the target bank account. |
607 | — | 400 | A downstream provider did not return success for CPM AdjustAccountBalance. | Downstream balance adjustment failed. Retry after a brief delay. If persistent, contact Green Dot support. |
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls. |
505 | — | 500 | The transfer failed and the funds were credited back to the source. | Transfer failed and funds were credited back to the source account. Verify the source account balance was restored before retrying. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateAuthorizeExtend
POST /programs/{programCode}/accounts/{accountIdentifier}/experian/authorizeExtend
Extends an existing payment authorization.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateMrdcTransfer
POST /programs/{programCode}/transfers/mrdc
Creates a mobile remote deposit capture transfer.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GFTTransfer
POST /programs/{programCode}/transfers/gft
Initiates a Green Dot Funds Transfer (GFT) between accounts.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
4200 | 939 | 400 | Invalid Target Link Id | Target link ID is invalid. Verify the target account identifier is correct. |
4200 | 979 | 400 | ReceiverIndividual transaction amount exceeds weekly limit | Receiver's weekly individual transfer limit has been exceeded. Wait until the weekly limit resets. |
4200 | 980 | 400 | ReceiverAccount transaction exceeds weekly count limit | Receiver's account has exceeded the weekly transfer count limit. Wait until the count resets. |
4200 | 981 | 400 | ReceiverIndividual transaction amount exceeds monthly limit | Receiver's monthly individual transfer limit has been exceeded. Wait until the monthly limit resets. |
4200 | 987 | 400 | Account not eligible | Account is not eligible for GFT transfers. Check account status and eligibility. |
4214 | 1514 | 500 | An error occurred while sending the request. | Downstream timeout. Verify transfer status before retrying to avoid duplicate transactions. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
4215 | 1515 | 504 | No Response Received from the Processor — Timeout | No response from processor — request timed out. Check transfer status before retrying to avoid duplicate transactions. |
Transfer limit errors (
error_code: 4200): Sub codes979and981indicate weekly and monthly sender limits have been reached respectively. Check current transfer utilization before initiating transfers to avoid these errors.
Timeout errors (
error_code: 4215, sub_code1515): Always verify the transfer status before retrying — funds may have moved despite the timeout response.
GetACHTransfer
GET /programs/{programCode}/accounts/{accountIdentifier}/ACHTransfers
Returns details for an ACH transfer.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
700 | — | 400 | StartDate cannot be after current date. | Start date cannot be after current date. Verify the date range in the request. |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetAllP2PTransfer
GET /programs/{programCode}/accounts/{accountIdentifier}/transfers/p2p
Returns all peer-to-peer transfers for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
503 | — | 503 | Error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetMrdcTransferList
GET /programs/{programCode}/accounts/{accountIdentifier}/transfers/mrdc
Returns mobile remote deposit capture transfer records for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetP2PTransfer
GET /programs/{programCode}/accounts/{accountIdentifier}/transfers/{transferIdentifier}
Returns details for a specific peer-to-peer transfer.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
1000 | — | 400 | accountIdentifier doesn't match transferIdentifier | AccountIdentifier does not match the transferIdentifier. Verify both identifiers belong to the same account. |
10 | — | 404 | Account Not Found. | Transfer not found. Verify the transferIdentifier is correct. |
503 | — | 503 | Error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetTransferLimitsAndFeeRates
GET /programs/{programCode}/externalaccounts/transferlimitsandfeerates
Returns transfer limits and applicable fee rates for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
4214 | 1514 | 500 | Downstream timeout retrieving limits. Retry after a brief delay. |
SearchTransfers
GET /programs/{programCode}/externalAccounts/customers/{customerIdentifier}/transfers
Searches transfers by criteria for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
700 | — | 400 | Invalid value. Please provide a date less than current date. | |
4201 | 1501 | 404 | Record not found | No transfer record found. Verify the transfer identifier and date range parameters. |
4214 | 1514 | 500 | An error occurred while sending the request. | Downstream timeout. Retry after a brief delay. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Transfer
POST /programs/{programCode}/transfers
Initiates a funds transfer between accounts.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | — | 400 | Memo exceeds max length of 140 characters. | Memo field exceeds maximum length of 140 characters. Truncate the memo before submitting. |
607 | — | 400 | A downstream provider did not return success for CPM AdjustPurseBalance. | Downstream purse balance adjustment failed. Retry after a brief delay. If persistent, contact Green Dot support. |
4200 | 939 | 400 | Invalid Target Link Id | Target link ID is invalid. Verify the target account identifier is correct and the accounts are properly linked. |
4200 | 962 | 400 | Transaction amount is less than fee amount | Transfer amount is less than the applicable fee. Increase the transfer amount to exceed the minimum fee threshold. |
4200 | 964 | 400 | Source and Target account should not be same | Source and target accounts must be different. Verify the request is not sending to the same account. |
4200 | 979 | 400 | SenderIndividual transaction amount exceeds weekly limit | Sender has reached their weekly individual transfer limit. Wait until the weekly limit resets, or reduce the transfer amount. |
4200 | 981 | 400 | SenderIndividual transaction amount exceeds monthly limit | Sender has reached their monthly individual transfer limit. Wait until the monthly limit resets, or reduce the transfer amount. |
4200 | 987 | 400 | Account not eligible | Source account is not eligible for transfers. Check the account status and transfer eligibility before attempting. |
4200 | 1012 | 400 | Invalid or past Expiration Date | Card expiration date is invalid or expired. Verify the card is not expired before initiating a transfer. |
4200 | 1014 | 400 | Transaction declined | Transaction was declined. Check the account status, balance, and fraud flags before retrying. |
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls to this endpoint. |
4214 | 1514 | 500 | GetPurses — System Error | Downstream timeout processing the transfer. Verify transfer status before retrying to avoid duplicate transactions. |
4217 | 1517 | 500 | Declined by Fraud | Transaction was declined by the fraud system. Do not retry automatically — the cardholder may need to contact support to verify their identity. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
4215 | 1515 | 504 | GetPurses — Timeout | Transfer timed out. Check the transfer status before retrying to avoid duplicate transactions. |
Transfer limit errors (
error_code: 4200): Sub codes979and981indicate weekly and monthly sender limits have been reached respectively. Check current transfer utilization before initiating transfers to avoid these errors.
Timeout errors (
error_code: 4215, sub_code1515): Always verify the transfer status before retrying — funds may have moved despite the timeout response.
External Bank Accounts
AchLinkExternalAccountRequest
POST /programs/{programCode}/account/{identifier}/externalbankaccount
Links an external bank account to a cardholder account via ACH.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
630 | — | 400 | Can not link external account due to allowable linked account limit hit. | Maximum number of linked external bank accounts has been reached. Remove an existing linked account before adding a new one. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
AddExternalCard
POST /programs/{programCode}/externalcards
Links an external card to a cardholder account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
50 | — | 406 | An encrypted data block on the payload was not decrypted successfully. | Payload decryption failed. Verify the request body is correctly encrypted with the current PCI encryption key and that the key version matches. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateExternalAccountLinkToken
POST /programs/{programCode}/account/{identifier}/token/create
Creates a token for linking an external bank account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateTrialDeposit
POST /programs/{programCode}/externalAccounts/customers/{customerIdentifier}/trialDeposit
Initiates micro-deposits to verify an external bank account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
630 | — | 400 | Routing number is invalid | Routing number is invalid. Verify the routing number is 9 digits and belongs to a valid US financial institution. |
DeleteExternalCard
DELETE /programs/{programCode}/accounts/{accountIdentifier}/externalcards/{externalCardIdentifier}
Removes a linked external card from an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetACHDeliveryDate
GET /programs/{programCode}/DeliveryDate
Returns the estimated delivery date for an ACH transfer.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetExternalBankAccounts
GET /programs/{programCode}/accounts/{accountIdentifier}/externalbankaccounts
Returns linked external bank accounts for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | No active linked bank account found | No linked external bank account found for this account. Prompt the user to link a bank account before calling this endpoint. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetLinkedAccount
GET /programs/{programCode}/accounts/{accountIdentifier}/getLinkedAccount
Returns linked account details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
VerifyTrialDeposit
POST /programs/{programCode}/externalAccounts/customers/{customerIdentifier}/trialDeposit/verify
Verifies the trial deposit amounts to confirm a linked bank account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Trial deposit not found. | Trial deposit not found. Verify the trial deposit was initiated and the amounts match exactly. |
Bill Pay
CreatePayee
POST /programs/{programCode}/accounts/{accountIdentifier}/billpayPayees
Creates a new bill pay payee for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
3109 | — | 400 | AddPayee failed. | Add payee request failed. Verify the payee information is complete and valid, then retry. |
4000 | — | 400 | Please enter only characters A-Z with 2 digit length | Payee name must be 2–32 characters using only A-Z characters. Validate the payee name before submitting. |
4004 | — | 400 | Payee already exists | Payee already exists for this account. Retrieve the existing payee list before creating a new one. |
4008 | — | 400 | No data returned due to subscriber status | Bill pay subscriber status is inactive. Verify the customer's bill pay subscription is active before adding payees. |
4017 | — | 400 | Invalid Customer Account data | Customer account data is invalid. Verify all required account fields (account number, routing number) are correct. |
3010 | — | 500 | General System Error | Bill pay system error. Retry after a brief delay. If persistent, contact Green Dot support. |
CreatePayment
POST /programs/{programCode}/accounts/{accountIdentifier}/billpayPayments
Schedules a bill payment to a payee.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
4002 | — | 400 | Field syntax invalid | Request field syntax is invalid. Verify all fields match the API specification format. |
4008 | — | 400 | No data returned due to subscriber status | Subscriber status is inactive. Verify the customer's bill pay subscription before scheduling payments. |
4020 | — | 400 | Duplicate payment | Duplicate payment detected. Check existing scheduled payments before creating a new one. |
4050 | 1352 | 400 | Payment denied — per use limit exceeded | Per-use payment limit has been exceeded. Check the account's payment limit configuration. |
3010 | — | 500 | General System Error | Bill pay system error. Retry after a brief delay. If persistent, contact Green Dot support. |
DeletePayee
DELETE /programs/{programCode}/accounts/{accountIdentifier}/billpayPayees/{payeeIdentifier}
Removes a bill pay payee from an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
4008 | — | 400 | No data returned due to subscriber status | Subscriber status is inactive. Verify the customer's bill pay subscription before deleting payees. |
3010 | — | 500 | General System Error | Bill pay system error. Retry after a brief delay. If persistent, contact Green Dot support. |
DeletePayment
DELETE /programs/{programCode}/accounts/{accountIdentifier}/billpayPayments/{paymentIdentifier}
Cancels a pending bill payment.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
3120 | — | 400 | Delete payment request failed. | Delete payment request failed. Verify the paymentId is correct and the payment is in a cancelable state. |
4008 | — | 400 | No data returned due to subscriber status | |
4041 | — | 400 | Cannot modify or cancel payments that are processed, being processed, or in a canceled state. | Payment cannot be modified or canceled — it is already in a processed or canceled state. Only pending payments can be canceled. |
3010 | — | 500 | General System Error | Bill pay system error. Retry after a brief delay. If persistent, contact Green Dot support. |
GetPayeeList
GET /programs/{programCode}/accounts/{accountIdentifier}/billpayPayees
Returns the list of bill pay payees for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
3010 | — | 500 | General System Error | Bill pay system error. Retry after a brief delay. If persistent, contact Green Dot support. |
GetPaymentList
GET /programs/{programCode}/accounts/{accountIdentifier}/billpayPayments
Returns scheduled and historical bill payments for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetPayments
GET /programs/{programCode}/accounts/{accountIdentifier}/payments
Returns payment records and statements for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 207 | 400 | SCC Account not found | SCC account not found. Verify the accountIdentifier is correct and the account has SCC enabled. |
400 | 309 | 400 | No statement available | No payment statement available for the requested period. Verify the account has activity in the requested date range before calling this endpoint. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
On
error_code: 400 / sub_code: 309: This is an expected response when no payment statement exists for the requested period. Design your integration to handle this gracefully rather than as an exception.
SearchPayee
POST /programs/{programCode}/accounts/{accountIdentifier}/billpayPayees/search
Searches bill pay payees by name or criteria.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
3108 | — | 400 | SearchPayee failed | SearchPayee request failed. Verify search parameters and retry. |
4000 | — | 400 | Please enter name in between 3-32 characters | Search term must be 3–32 characters. Validate the search term length before submitting. |
3010 | — | 500 | General System Error | Bill pay system error. Retry after a brief delay. If persistent, contact Green Dot support. |
4051 | — | 503 | The payee search term produces too many results. Please refine the search term. | Search term is too broad and returns too many results. Use a more specific search term to narrow results. |
UpdatePayment
PUT /programs/{programCode}/accounts/{accountIdentifier}/billpayPayments/{paymentIdentifier}
Updates a pending bill payment.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
620 | — | 400 | PaymentDate cannot be in the past. | Payment date cannot be in the past. Update the paymentDate to a current or future date. |
3119 | — | 400 | CheckFree PaymentModify returned a failed or empty response. | Modify payment request failed. Verify the payment is in a modifiable state before attempting updates. |
4000 | — | 400 | Payment Date must be greater than current date | Payment date must be in the future. Update the paymentDate to a future date. |
4042 | — | 404 | Payment not found. Check Transaction ID. | Payment not found. Verify the transaction ID is correct. |
Statements & Documents
GetEStatement
GET /programs/{programCode}/accounts/{accountIdentifier}/statements/{statementPeriod}
Retrieves a specific electronic statement.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
700 | — | 400 | Invalid Statement Period | Invalid statement period. Verify the statement date range is valid and falls within available history. |
10 | — | 404 | Invalid AccountIdentifier. | Statement not found. Verify the accountIdentifier and statement period are correct. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetInterestEarned
GET /programs/{programCode}/accounts/{accountIdentifier}/purses/{purseIdentifier}/interestEarned
Returns interest earned information for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetListEStatement
GET /programs/{programCode}/accounts/{accountIdentifier}/statements
Returns a list of available electronic statements for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
350 | — | 400 | X-GD-RequestId must be a GUID. | |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
500 | — | 500 | Failed to get EStatement list transaction data | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetListTaxDocumentNoDocType
GET /programs/{programCode}/accounts/{accountIdentifier}/taxdocuments
Returns the list of available tax documents for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetTaxDocumentNoDocType
GET /programs/{programCode}/accounts/{accountIdentifier}/taxdocuments
Returns a tax document for an account without specifying a document type.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
Features & Eligibility
GetAllFeatureEligibility
GET /programs/{programCode}/accounts/{accountIdentifier}/featureeligibility
Returns eligibility status for all features on an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetFeatures
GET /programs/{programCode}/accounts/{accountIdentifier}/features
Returns the feature set and status for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetProductFeatureLimits
GET /programs/{programCode}/products/{productCode}/features/{featureKey}/limits
Returns the configured limits for a product's feature set.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Product feature limits not found. | No product feature limits found for this program/product. Verify the programCode and product configuration. |
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetProductInterestRateTier
GET /programs/{programCode}/products/{productCode}/InterestRateTier
Returns interest rate tier information for a product.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
OptIn
GET /programs/{programCode}/accounts/{accountIdentifier}/experian/optin
Opts an account into an available program or feature.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateFeature
PUT /programs/{programCode}/accounts/{accountIdentifier}/features/{featureKey}
Updates the status or configuration of a feature on an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
350 | — | 400 | Invalid featureId. | |
1000 | — | 400 | Failed to get overdraft eligibility. | |
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateOptin
PUT /programs/{programCode}/accounts/{accountIdentifier}/experian/optin
Updates an existing opt-in configuration for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Overdraft
GetOverdraftFeeAuthTransactions
GET /programs/{programCode}/accounts/{accountIdentifier}/overdraftFeeAuthTransactions
Returns authorization transactions associated with overdraft fees.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetOverdraftTransactions
GET /programs/{programCode}/accounts/{accountIdentifier}/overdraftTransactions
Returns transactions that triggered overdraft coverage.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
ODFeeEligibleTransactions
GET /programs/{programCode}/account/{identifier}/odfeeeligibletransactions
Returns transactions eligible for overdraft fee assessment.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
OdEligibilityCheck
GET /programs/{programCode}/accounts/{accountIdentifier}/odEligibilities
Checks whether an account is eligible for overdraft coverage.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Success | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Rewards & Cashback
GetCashbackRewardBusinessProcessRules
GET /programs/{programCode}/cashbackReward/businessProcessRules
Returns the business rules governing cashback reward processing.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetCashbackRewardInquiry
GET /programs/{programCode}/accounts/{accountIdentifier}/cashbackReward/inquiry
Returns cashback reward balance and details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | — | 500 | Internal server error — database connection failure. | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetCashbackRewardSummary
GET /programs/{programCode}/accounts/{accountIdentifier}/cashbackReward/summary
Returns a summary of cashback rewards earned for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
eGift
DeleteEGift
DELETE /programs/{programCode}/account/{identifier}/egifts/{egiftIdentifier}
Deactivates an eGift card from a cardholder's wallet.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
2012 | 1540 | 409 | Gift Card already inactive. | Gift card is already inactive. No action required — check the gift card status before attempting deletion. |
EGiftGetLifeTimeRewards
GET /programs/{programCode}/account/{identifier}/egifts/lifetimerewards
Returns lifetime eGift reward totals for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
5003 | — | 400 | A severe error occurred on the current command while calling GetLifeTimeRewards. | Error retrieving lifetime rewards. Retry the request. If persistent, contact Green Dot support. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetEGiftBalance
GET /programs/{programCode}/account/{identifier}/egifts/balance
Returns the current balance of an eGift card.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
2013 | 1542 | 400 | Vendor Bad request. | Vendor returned a bad request. Verify all eGift parameters are correct and the gift card is valid. |
GetEGiftCatalog
GET /programs/{programCode}/account/{identifier}/egifts/catalog
Returns the available eGift product catalog.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetEGiftWallet
GET /programs/{programCode}/account/{identifier}/egifts
Returns eGift cards stored in a cardholder's wallet.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
2001 | 1500 | 500 | Database timeout — Cassandra host did not reply before timeout. | Gift card database timeout. Retry after a brief delay. If persistent, contact Green Dot support. |
PurchaseEGift
POST /programs/{programCode}/account/{identifier}/egifts/purchase
Purchases an eGift card from the catalog.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
600 | — | 400 | AccountIdentifier must be provided for account endpoint type. | AccountIdentifier is required for account endpoint type. Include the accountIdentifier in the request. |
2011 | 1538 | 409 | Insufficient Funds. | Account balance is insufficient. Check the account balance before initiating a purchase, or prompt the cardholder to add funds. |
Notifications & Messaging
CreateNotificationEnrollment
POST /programs/{programCode}/accounts/{accountIdentifier}/notification/enrollment
Enrolls an account for push notifications.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
200 | — | 400 | Contact object is required in Contacts. | |
503 | — | 503 | CnApi did not return a recognizable response. | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetInboxMessageCount
GET /programs/{programCode}/accounts/{accountIdentifier}/inbox/messages/count
Returns the unread message count for a cardholder's notification inbox.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Database connection failure — SQL Server not reachable. | Notification database is temporarily unavailable. Retry after a brief delay. If persistent, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetInboxMessages
GET /programs/{programCode}/accounts/{accountIdentifier}/inbox/messages
Returns messages from a cardholder's notification inbox.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Database connection failure — SQL Server not reachable. | Notification database is temporarily unavailable. Retry after a brief delay. If persistent, contact Green Dot support. |
GetNotificationEnrollment
GET /programs/{programCode}/accounts/{accountIdentifier}/notification/enrollment
Returns push notification enrollment details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | CnApi did not return a recognizable response. | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
MarkMessageAsRead
PUT /programs/{programCode}/accounts/{accountIdentifier}/inbox/messages
Marks a notification message as read.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Identifiers & Tokens
AddTokenToRecipientsList
POST /programs/{programCode}/recipients/{recipientIdentifier}
Adds a token identifier to a cardholder's recipient list.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 200023 | 400 | Nickname already exists | A recipient with this nickname already exists. Use a unique nickname for each recipient. |
400 | 200024 | 400 | The relationship between Account Identifiers is not valid or it already exists | The account identifier relationship is not valid or already exists. Verify the account relationship before adding. |
CreateTokenIdentifier
POST /programs/{programCode}/accounts/{accountIdentifier}/externalIdentifiers
Creates a new external token identifier for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 1216 | 400 | Invalid Email address | Email address format is invalid. Verify the email address follows standard format ([email protected]). |
400 | 200020 | 400 | AccountIdentifier already exists | AccountIdentifier already has a token. Remove the existing token before creating a new one. |
DirectorySearchToken
POST /programs/{programCode}/directory/search
Searches for a token identifier in the account directory.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | 200025 | 400 | Invalid searchCriteria | Search criteria is invalid. Verify the searchCriteria parameter format and value. |
GetAllRecipientsToken
POST /programs/{programCode}/recipients
Returns all token identifiers on a cardholder's recipient list.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
404 | 1205 | 400 | Record Not Found | No token record found. Verify the accountIdentifier is correct. |
GetUserTokensByAccountId
GET /programs/{programCode}/accounts/{accountIdentifier}/externalIdentifiers
Retrieves external identifier tokens associated with an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
404 | 1205 | 400 | Record Not Found | No token record found for this account. Verify the accountIdentifier is correct and a token has been registered. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Note on
error_codevshttp_status:error_code: 404indicates a business-level "record not found" condition — it is not an HTTP 404. The accompanying HTTP status for this condition is400. Always parseresponseDetails.codeandresponseDetails.subCodefor programmatic error handling rather than relying solely on HTTP status.
On
error_code: 404 / sub_code: 1205: This is one of the most frequently encountered responses for this endpoint across integrations. In most cases it is not an error state — it is a normal "token not yet registered" lookup result. Design your integration to handle it gracefully as a conditional check rather than an exception.
UpdateRecipientById
PUT /programs/{programCode}/recipients/{recipientIdentifier}
Updates a recipient record by identifier.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | 1200 | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
KYC & Identity Verification
AddressVerifications
POST /programs/{programCode}/addressverification
Verifies an address for a cardholder.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CheckVerifications
PUT /programs/{programCode}/contactVerifications/{identifier}
Checks the status or result of a verification challenge.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
5 | 602 | 400 | The request was invalid. See the description for details. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
CreateIDVValidation
POST /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/kycGates/idv
Initiates an identity document verification request.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
ExecuteKyc
POST /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/kycGates/kyc2
Executes a KYC (Know Your Customer) identity check for an enrollment.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
701 | — | 400 | DOB is invalid; the minimum age must be 18. | Cardholder does not meet the minimum age requirement. Verify the dateOfBirth value and format. |
760 | — | 400 | Invalid SSN. | SSN is invalid. Verify the SSN is exactly 9 digits and does not contain hyphens or spaces. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GenerateDocVDocumentRequest
POST /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/socureDocumentRequest
Generates a document verification request via the risk service.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
9000 | 340 | 503 | Risk Service did not return success response | Risk service did not return a success response. Retry after a brief delay. If persistent, escalate to Green Dot support. |
GenerateVerifications
POST /programs/{programCode}/contactVerifications
Generates a verification code or challenge for a cardholder.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
5 | 602 | 400 | The request was invalid. See the description for details. | |
350 | — | 400 | Invalid phone number format. | |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetAuthCustomerEnrollment
GET /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/getAuthCustomerEnrollment
Returns authentication enrollment details for a customer.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
760 | — | 400 | IdentityType should be SSN or ITIN. | Identity type must be SSN or ITIN. Update the identityType field to 'SSN' or 'ITIN' in the request. |
500 | — | 500 | Internal server error. | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetAuthCustomerSSOToken
GET /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/authCustomerSSOToken
Returns an SSO token for an authenticated customer session.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
760 | — | 400 | IdentityType should be SSN or ITIN. | Identity type must be SSN or ITIN. Update the identityType field to 'SSN' or 'ITIN' in the request. |
500 | — | 500 | A connection attempt failed — connected party did not respond in time. | Internal error during SSO token generation. Retry after a brief delay. If persistent, verify the customer account is in good standing. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetContactVerificationStatus
GET /programs/{programCode}/contactVerifications/{identifier}
Returns the status of a contact verification session.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | 342 | 404 | Verification session is not found | Verification session not found or expired. Initiate a new verification session and use the new session ID. |
GetValidateIdentity
GET /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/validateidentity
Returns the result of a previous identity validation check.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
500 | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetValidateSsn
GET /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/validatessn
Validates an SSN against account records.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
IDVUuidValidation
POST /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/kycGates/idvsocure
Validates a UUID used in an identity document verification flow.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
409 | 4091 | 409 | The call timed out waiting for an active request to complete on an overlapping call. | Concurrent request conflict. Implement request queuing or add a delay between overlapping calls. |
| — | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
ValidateIdentity
GET /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/validateidentity
Validates a cardholder's identity against enrollment data.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
760 | 1001 | 400 | Invalid identity value. | The identity value provided is invalid. Verify the format and value of the identity field match what was collected at enrollment. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
VerifyDevice
POST /programs/{programCode}/deviceVerification
Verifies a registered device for a cardholder session.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | — | 400 | Fail | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Balance Adjustments
AdjustBalance
POST /programs/{programCode}/accounts/{accountIdentifier}/adjustments
Applies a balance adjustment to an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
101 | — | 400 | Program code does not match adjustment type | |
| — | — | 500 | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. | |
| — | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | System error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetAdjustBalanceStatus
GET /programs/{programCode}/accounts/{accountIdentifier}/adjustments/{adjustmentIdentifier}
Returns the status of a balance adjustment.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | AdjustmentIdentifier not found. | Adjustment identifier not found. Verify the adjustmentIdentifier was returned from a previous AdjustBalance call. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Credit & Lending
GetCreditBuilderLoan
GET /programs/{programCode}/accounts/{accountIdentifier}/creditBuilderLoan
Returns credit builder loan details for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | 1701 | 404 | Invalid CreditBuilderLoan Identifier. | Credit builder loan identifier is invalid. Verify the loanIdentifier is correct. |
GetCreditScores
POST /programs/{programCode}/accounts/{accountIdentifier}/users/USERIDENTIFIER/getCreditScores
Returns credit score information for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
UpdateCreditLineSource
PUT /programs/{programCode}/accounts/{accountIdentifier}/creditLineSource
Updates the income source associated with a credit line.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
610 | — | 400 | Invalid Income. | Income value is invalid. Verify the income field format and value. |
Locations
GetAtmLocations
GET /programs/{programCode}/locations/ATM
Returns ATM locations near a given address or coordinates.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
400 | — | 400 | Validation failed — see details. | Request validation failed. Verify that postalCode (5-digit US format) and city (max 25 characters) are correctly formatted. |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetECashPartnersByLocation
GET /programs/{programCode}/accounts/{accountIdentifier}/ecashpartnersbylocation
Returns eCash partner locations for cash loading.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
950 | 601 | 500 | System Error | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
Mail Tracking
GetMailTrackingInfo
GET /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}/deliveryStatus
Returns mail tracking information for a card sent to a cardholder.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
101 | — | 400 | The request was invalid | |
350 | — | 400 | Invalid paymentInstrumentIdentifier. | The paymentInstrumentIdentifier format is invalid. Verify the identifier is a valid UUID. |
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
10 | — | 404 | Account Not Found. | Account not found. Verify the accountIdentifier is correct. |
10 | 11 | 404 | PaymentInstrument Not Found. | Payment instrument not found. Verify the paymentInstrumentIdentifier is correct and associated with the account. |
503 | — | 503 | Error | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. | |
504 | — | 503 | The request timed out | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Program & Product
GetFeeInfoByProductCodeAndFeeTypeKey
POST /programs/{programCode}/accounts/GetFeeInfoByProductCodeAndFeeTypeKey
Returns fee information for a specific product and fee type.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetFeeWaivers
POST /programs/{programCode}/accounts/{accountIdentifier}/GetFeeWaivers
Returns fee waiver eligibility and history for an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
GetProgramInfo
GET /programs/{programCode}/GetProgramInfo
Returns configuration and metadata for a program.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
| — | — | 401 | Authentication required or token invalid. | Verify API credentials and ensure the authentication token is valid and has not expired. Re-authenticate and retry the request. |
503 | — | 503 | Fail | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Support
Redeem
POST /programs/{programCode}/accounts/{accountIdentifier}/cashbackReward/redeem
Redeems a reward or promotional balance on an account.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Primary AccountBalance is not positive. | Account balance is not positive. Verify the account has a positive balance before redeeming. |
500 | — | 500 | Invalid RedeemableAmount. | Internal server error. Retry the request with exponential backoff (suggested: wait 1s, then 2s, then 4s). If the error persists after 3 retries, contact Green Dot support with the requestId. |
503 | — | 503 | Service temporarily unavailable. Retry with exponential backoff. If persistent after 3 retries, contact Green Dot support. |
Other
GetReplacementCards
GET /programs/{programCode}/accounts/{accountIdentifier}/cardOptions
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
10 | — | 404 | Replacement Card not found. | No replacement card record found for this account. Verify the account has an active replacement card request. |
UpdateCheck
PUT /programs/{programCode}/accounts/{accountIdentifier}/transfers/{transferIdentifier}/mrdc
Updates the status of a submitted check.
error_code | sub_code | http_status | Description | Resolution |
|---|---|---|---|---|
100 | 10 | 400 | None |
Updated 7 days ago
