eCash
eCash APIs can be used to enable customers to create and use for customers to add cash to their accounts at participating eCash locations.
Overview
The eCash API enables customers to create and use barcodes to add cash to their accounts at participating eCash locations.
How it Works
- The user generates a barcode using the mobile app or Green Dot's website.
- The user shows the barcode to the eCash Partner (retailer).
- The eCash Partner scans the barcode and allows the user to add funds to an account using cash.
Note: For eCash transactions that credit or debit an account, the transactionType is eCash.
eCash API Endpoints
List Participating eCash Partners
This endpoint is used to retrieve a list of eCash partners (retailers) for a specific programCode.
API Call Structure
GET /programs/{programCode}/accounts/{accountIdentifier}/ecashpartners
Sample Response Body
{
"partners": [
{
"partnerId": "string",
"partnerName": "string",
"faceFee": "string"
}
],
"responseDetails": [
{
"code": 0,
"subCode": 0,
"description": "string",
"url": "string"
}
]
}
{
"responseDetails":[
{
"code":0,
"subCode":0,
"description":"string",
"url":"string"
}
],
"partners":[
{
"partnerId":12345,
"partnerName":"Rite Aid",
"faceFee":"$3.95"
}
]
}
Response Parameters
Field | Description |
---|---|
"responseDetails": [ { "code": 0, "subCode": 0, "description": "string", "url": "string" } ] | See Response Details for more information. |
partners | Contains the identifying information for a eCash partner (retailer). (i.e. partnerId, partnerName, faceFee) |
partnerId | Unique identifier for an eCash Partner (retailer), that is provided by Green Dot in the response details. If the partnerId is provided, a barcode number will be generated and returned for the eCash Partner (retailer). If it is not provided, only an eCashTransactionID will be returned. Ex: 12345 |
partnerName | Name of the retailer. Ex: Rite Aid |
faceFee | Fee charged to the customer at the eCash location. Ex: 3.95 |
Obtain Active Barcodes for User Account
This endpoint retrieves a list of active barcodes associated with a user’s account based on the account identifier.
API Call Structure
GET /programs/{programCode}/accounts/{accountIdentifier}/barcodes/list
Sample Response Body
{
"eCash": [
{
"partnerId": "string",
"partnerName": "string",
"programCode": "string",
"productCode": "string",
"accountIdentifier": "string",
"amount": 0,
"recipient": {
"phonenumber": "string",
"firstname": "string",
"lastname": "string"
},
"memo": "string",
"transactionType": "",
"zipCode": "string",
"barcodeStatus": "",
"barcodeNumber": "string",
"barcodeHumanReadable": "string",
"barcodeExpirationDateTime": "2022-08-31T15:27:35.459Z",
"faceFee": 0
}
],
"responseDetails": [
{
"code": 0,
"subCode": 0,
"description": "string",
"url": "string"
}
]
}
{
"responseDetails":[
{
"code":0,
"subCode":0,
"description":"string",
"url":"string"
}
],
"eCash":[
{
"partnerId":"12345",
"partnerName":"RiteAid",
"programCode":"string",
"productCode":"eCash",
"amount":40,
"faceFee":3.95,
"zipcode":"93010",
"recipient":{
"phonenumber":"626-765-1222",
"firstName":"John",
"lastName":"Park"
},
"memo":"memo for the transaction",
"transactionType":"load",
"barcodeHumanReadable":"ECB10041895",
"barcodeNumber":10041895,
"barcodeExpirationDateTime":"2019-07-24T23:31:16.892Z",
"barcodeStatus":"new"
}
]
}
Response Parameters
Field | Descriptions |
---|---|
"responseDetails": [ { "code": 0, "subCode": 0, "description": "string", "url": "string" } ] | See Response Details for more information. |
eCash | An eCashTransaction is an object linked to a user and to the eCash Partner’s transaction ID (reference number). The eCash Partner generates their transaction ID and provides it to Green Dot. We then link the ID to the eCashTransaction. Note: The eCashTransaction is linked to the barcode number as well. |
partnerId | Unique identifier for an eCash Partner (retailer), that is provided by Green Dot in the response details. If the partnerId is provided, a barcode number will be generated and returned for the eCash Partner (retailer). If it is not provided, only an eCashTransactionID will be returned. Ex: 12345 |
partnerName | Name of the retailer. Ex: Rite Aid |
programCode | Unique identifier for a program. |
productCode | Unique identifier for a product. |
Amount | Used to indicate the amount of the transaction. This may be used for validation at the time of transaction. Max Length: 2 digits Ex: 40 |
faceFee | Fee charged to the customer at the eCash location. Ex: 3.95 |
zipCode | The zip code associated with the user’s profile location. Ex. 93010 |
recipient | Information about the person receiving the transaction amount. |
phoneNumber | The recipient’s phone number. Ex: 626-765-1222 |
firstName | The recipient’s first name. Ex: John |
lastName | The recipient’s last name. Ex: Park |
memo | Description added by the user, when loading or sending the barcode number. Ex: memo for the transaction |
transactionType | Type of transaction being made. Available types are load or send. |
barcodeHumanReadable | This is an external identifier. Ex: ECB10041895 |
barcodeNumber | A unique barcode number associated with the specified eCash Partner (retailer) (retailer). Ex: 10041895 |
barcodeExpirationDateTime | The date and time (UTC) the barcode will expire. |
barcodeStatus | The status of the barcode attached to the eCashTransactionID. The available status options are: • new • declined • processing • expired • consumed |
Obtain Barcode Details
This endpoint retrieves the details about a specific barcode associated with a user’s account based on the accountIdentifier.
API Call Structure
GET /programs/{programCode}/accounts/{accountIdentifier}/barcodes/{barcodeHumanReadable}
Sample Response Body
{
"eCash": [
{
"partnerId": "string",
"partnerName": "string",
"programCode": "string",
"productCode": "string",
"accountIdentifier": "string",
"amount": 0,
"recipient": {
"phonenumber": "string",
"firstname": "string",
"lastname": "string"
},
"memo": "string",
"transactionType": "",
"zipCode": "string",
"barcodeStatus": "",
"barcodeNumber": "string",
"barcodeHumanReadable": "string",
"barcodeExpirationDateTime": "2022-08-31T15:34:31.198Z",
"faceFee": 0
}
],
"responseDetails": [
{
"code": 0,
"subCode": 0,
"description": "string",
"url": "string"
}
]
}
{
"responseDetails":[
{
"code":0,
"subCode":0,
"description":"string",
"url":"string"
}
],
"eCash":[
{
"partnerId":"12345",
"partnerName":"RiteAid",
"programCode":"string",
"productCode":"eCash",
"amount":40,
"faceFee":3.95,
"zipcode":"93010",
"recipient":{
"phonenumber":"626-765-1222",
"firstName":"John",
"lastName":"Park"
},
"memo":"memo for the transaction",
"transactionType":"load",
"barcodeHumanReadable":"ECB10041895",
"barcodeNumber":10041895,
"barcodeExpirationDateTime":"2019-07-24T23:31:16.892Z",
"barcodeStatus":"new"
}
]
}
Response Parameters
Field | Description |
---|---|
"responseDetails": [ { "code": 0, "subCode": 0, "description": "string", "url": "string" } ] | See Response Details for more information. |
eCash | An eCashTransaction is an object linked to a user and to the eCash Partner’s transaction ID (reference number). The eCash Partner generates their transaction ID and provides it to Green Dot. We then link the ID to the eCashTransaction. Note: The eCashTransaction is linked to the barcode number as well. |
partnerId | Unique identifier for an eCash Partner (retailer), that is provided by Green Dot in the response details. If the partnerId is provided, a barcode number will be generated and returned for the eCash Partner (retailer). If it is not provided, only an eCashTransactionID will be returned. Ex: 12345 |
partnerName | Name of the retailer. Ex: Rite Aid |
programCode | Unique identifier for a program. |
productCode | Unique identifier for a product. |
Amount | Used to indicate the amount of the transaction. This may be used for validation at the time of transaction. Max Length: 2 digits Ex: 40 |
faceFee | Fee charged to the customer at the eCash location. Ex: 3.95 |
zipCode | The zip code associated with the user’s profile location. Ex. 93010 |
recipient | Information about the person receiving the transaction amount. |
memo | Description added by the user, when loading or sending the barcode number. Ex: memo for the transaction |
transactionType | Type of transaction being made. Available types are load or send. |
barcodeHumanReadable | This is an external identifier. Ex: ECB10041895 |
barcodeNumber | A unique barcode number associated with the specified eCash Partner (retailer) (retailer). Ex: 10041895 |
barcodeExpirationDateTime | The date and time (UTC) the barcode will expire. |
barcodeStatus | The status of the barcode attached to the eCashTransactionID. The available status options are: • new • declined • processing • expired • consumed |
Generate a New Barcode
This endpoint generates a new barcode for an eCash Partner (retailer).
API Call Structure
POST /programs/{programCode}/accounts/{accountIdentifier}/barcodes
Things to Remember
- Barcodes are retailer-specific due to the barcode format accepted by the retailer. Although some retailers have the same barcode format and a barcode can technically be used at retailers that share the same format, Green Dot recommends that barcodes be marketed as retailer specific. This prevents a customer from going to a retailer that may not accept the barcode format generated.
- Barcodes can only be used once.
- Funds are not available immediately. Most retailers have a 10-15 minute funding delay in place.
- If a new barcode is generated and it is not used, it will become expired.
NOTE: The expiration date and time is returned in the response when the new barcode is generated.
Response Codes
Code | Description |
---|---|
400 | Invalid Partner or Amount |
404 | Account Identifier or Product/Program Code not Found |
Sample Response Body
{
"eCash": {
"barcodeStatus": "",
"barcodeNumber": "string",
"barcodeHumanReadable": "string",
"barcodeExpirationDateTime": "2022-08-31T19:09:32.127Z",
"faceFee": 0,
"amount": 0
},
"responseDetails": [
{
"code": 0,
"subCode": 0,
"description": "string",
"url": "string"
}
]
}
{
"responseDetails":[
{
"code":0,
"subCode":0,
"description":"string",
"url":"string"
}
],
"eCash":{
"barcodeStatus":"new",
"barcodeNumber":10041895,
"barcodeHumanReadable":"ECB10041895",
"barcodeExpirationDateTime":"2019-08-01T18:31:50.381Z",
"faceFee":3.95
}
}
Response Parameters
Field | Description |
---|---|
"responseDetails": [ { "code": 0, "subCode": 0, "description": "string", "url": "string" } ] | See Response Details for more information |
faceFee | Fee charged to the customer at the eCash location. Ex: 3.95 |
eCash | An eCashTransaction is an object linked to a user and to the eCash Partner’s transaction ID (reference number). The eCash Partner generates their transaction ID and provides it to Green Dot. We then link the ID to the eCashTransaction. Note: The eCashTransaction is linked to the barcode number as well. |
barcodeStatus | The status of the barcode attached to the eCashTransactionID. The available status options are: • new • declined • processing • expired • consumed |
barcodeNumber | A unique barcode number associated with the specified eCash Partner (retailer) (retailer). Ex: 10041895 |
barcodeHumanReadable | This is an external identifier. Ex: ECB10041895 |
barcodeExpirationDateTime | The date and time (UTC) the barcode will expire. |
Updated 10 months ago