Reload API Method

This method is used to reload money to a Green Dot or a Green Dot Partner Card.

📘

Every request triggered should have a unique X-GD-RequestId value in the header.

Syntax

POST {baseUrl}/reload/execute

Example Request

Success Request

POST {baseUrl}/reload/execute
Authorization: bearer {token}
Content-Type: application/json
X-GD-RequestId: 123456789

{
  "metadata": {    
    "merchantId": "FSCC0342",
    "registerId": "01001",
    "requestDateTime": "2013-09-18T10:53:00Z",    
    "storeId": "CC970",
    "userId": "[email protected]"
  },
  "accountNumber": "",
  "paymentProgramType": "Regular",
  "transactionAmount": 50.00,
  "accountIdentifier": "06e33e98-5c40-4c1a-967b-930f28f509a4",
  "reloadType": "SwipeReload"
}

Negative Request

POST {baseUrl}/reload/execute
X-GD-RequestId: 35962988448630
Content-Type: application/json
Authorization: Bearer {token}

{
    "accountNumber":"",
    "paymentProgramType":"Regular",
    "transactionAmount":20,
    "accountIdentifier":"06e33e98-5c40-4c1a-967b-930f28f509a4",
    "reloadType":"SwipeReload",
    "metadata":{
        "storeId":"CC988",
        "merchantId":"FSCC0342",
        "userId":"[email protected]",
        "requestDateTime":"2023-09-22T02:23:31Z",        
        "registerId":""
    }
}

Request Parameters

ParameterRequired(Y/N)Format/Data TypePatternDescription
X-GD-RequestIdYesStringMaxLength:50It is a unique transaction identifier that is generated by the retailer.
requestDateTimeYesDateTime2023-08-08T12:34:56ZTime stamp at which transaction occurred.
The time stamp has to be in UTC time zone and follow the following date and time formats:
• YYYY-MM-DDTHH:mm:ssZ
registerIdNoStringMaxLength: 20Register where the transaction occurred.
userIdYesStringMaxLength:50The unique ID of the user generating the transaction.
UserID is now a required field to support ‘teller incentive program’.
storeIdYesStringMaxLength: 20The store number associated with the retailer that sold the package.
If not supplied, InvalidParameter (Code:100) error will be return.
merchantIdYesStringMaxLength: 20The unique merchant Id. Defined by Green Dot – Merchant corresponding with Retailer.
accountNumberNoString16 digits PANAccount Number (PAN) of the card.
Note: Either AccountNumber or AccountIdentifier is required
transactionAmountYesDecimal500.00Amount of money to be reloaded. Must be greater than zero.
For example: Five Hundred Dollars is entered as 500.00. Twenty Dollars is entered as 20.00.
paymentProgramTypeYesEnumRegular,
CheckCashing
Type of payment option that customer selects.
For example:
• If the customer is paying with a check, then it will be “CheckCashing”.
• If they are paying by cash, or a combination of check and cash, PaymentProgramType will be “Regular”.
accountIdentifierNoGUIDe5843e05-d367-4bf1-a223-3af46ae18802Newly created unique identifier for sale card, should be using for all subsequent API calls
Note: Either AccountNumber or AccountIdentifier is required
reloadTypeNoEnumInitialLoad ,
SwipeReload
ReloadType includes the following values:
• SwipeReload
• InitialLoad
If request doesn’t provide the ReloadType, it will use ‘SwipeReload’ as the default value.

Example Response

Success Response

HTTP/1.1 200 OK
Content-Type: application/json
X-GD-RequestId: 201309181254
X-GD-ResponseId: 873e01e2-76fe-4fd1-8b18-2ccf5f2d5af9
X-GD-ResponseCode: 1
{
    "metadata": {
        "requestId": "201309181254",
        "responseCode": 1,
        "responseDescription": "SuccessFundingDelay",
        "responseDateTime": "2013-09-18T10:53:10.2543261Z",
        "responseId": "873e01e2-76fe-4fd1-8b18-2ccf5f2d5af9"
    },
    "pendingBalance": "100.00",
    "fundingDelaySeconds": "60",
    "isGDN": false    
}

Negative Response

HTTP/1.1 400 Bad Request
Content-Type: application/json
X-GD-RequestId: 35962988448630
X-GD-ResponseCode: 861
X-GD-ResponseId: 32ff3f6a-c4cf-4b87-94f3-f8cb62ce93ff

{
    "pendingBalance": null,
    "fundingDelaySeconds": null,
    "isGDN": false,
    "metadata": {
        "requestId": "35962988448630",
        "responseId": "32ff3f6a-c4cf-4b87-94f3-f8cb62ce93ff",
        "responseDateTime": "2023-09-22T02:23:37.4826331Z",
        "responseCode": 861,
        "responseDescription": "User is not found."
    }
}

Response Parameters

ParameterRequired(Y/N)Format/Data TypePatternDescription
requestIdYesStringMaxLength:50The unique request ID from request.
responseIdYesStringMaxLength:50The unique response identifier (generated by GreenDot).
responseDateTimeYesDateTime2023-09-07T16:12:23.4541445+08:00Time stamp at which transaction occurred.
The time stamp is in UTC time zone and follow the following date and time formats:
• YYYY-MM-DDTHH:mm:ssfffffffK
responseCodeYesNumericMaxLength:4Indicates success and failure of the response codes. It is in the numeric format.
responseDescriptionYesStringMaxLength:255Describes the Response Code in more detail. It is in the String format.
pendingBalanceYesString“1500.00”Transaction amount + card balance will be returned as PendingBalance in successful response. Only successful reload will have pendingBalance value.
fundingDelaySecondsYesString“60”The length of the funding delay in seconds. The transaction may be voided immediately after it had succeeded and up to FundingDelaySeconds. Please note that the actual delay the funds will be usable may be up to 2 minutes longer that this value due to some asynchronous processing in the backend system. Only successful reload will have fundingDelaySeconds value.
isGDNNoBooleantrue/falseIndicates that the reloaded card is a GDN card.

Response Cases

CodeCodeTextResponse DescriptionExplanation of the Response Code
1SuccessFundingDelaySuccessFundingDelaySuccess with funding delay. For transactions that have funding delay.
100InvalidParameter• Either AccountNumber or AccountIdentifier is required
• MerchantId is required
• RequestId is required
• RequestDateTime is required
• UserId is required
• StoreId is required
• RequestId is too long
• UserId is too long
• StoreId is too long
• MerchantId is too long
• Invalid length of AccountNumber
• The field RegisterId must be a string or array type with a maximum length of '20'.
Invalid parameter when validating request.
460OperationNotAllowedInvalid Initial Load RequestInvalid Initial load. Initial load can only be done once.

This response code will be used if card already had initial load
OR
Time window for the initial load has expired.
OR
Perform InitialLoad with invalid card
130InvalidMerchantInvalidMerchantMerchantId in request has not been found/enabled in the system.
800InvalidStore• Store was not found
• Store feature is invalid
Store is not found; store is not for the partner or store does not support this operation.
801StoreBlockedThe store is blockedStore is blocked by store blocker rule.
861RetailChainUserNotFoundUser is not found.UserID in the request is not found in system.
862RetailChainUserNotActiveUser is not active.UserId in request is not active.
700LoadLimitValidationFailed• Load amount should be between XX and XXX
• The transfer would cause the account's maximum allowed balance to be exceeded.
• Exceeds account daily load limit
Per transaction, account balance or daily account reload limit reached
110InvalidAccountNumber• AccountNotFound
• Account Not Found.
• AccountStatus is Closed.
• AccountStatus is Pending.
• AccountStatus is Locked.
• Account Status is Restricted
• This account is in a restricted state that does not allow inbound or internal transfers.
Account is not found; account status is not valid, or account is not reloadable for current partner
600UnableToProcessRequestDuplicate transaction detected.Unable to process request due to duplicate transaction and downstream error.

The duplicate reload request is a request with same partner, retail chain, store, user, card number and amount within 3 minutes.
842TransactionAlreadyVoidedTransaction was already voidedVoid request has been received before reload.
Decline reload request and mark transaction as voided.
1000GeneralFailureGeneralFailureService failure.