Barcode Generation

Barcode Generation API Method

Using client certificates, the partner authenticates themselves to Green Dot. After successful validation, the user is redirected to the eCash microsite. When redirecting the users, the partner must pass the following parameters in the HTTP Post request.

Request Parameters

NoData ElementData Type/LengthAdd CashBill PayComments
1partneridStringRequiredRequiredUnique ID assigned to the partner by GDN. Must be passed in all HTTP redirect requests
2subpartneridStringOptionalOptionalUsed to group transactions by sub-partner
3accountnoStringRequiredRequiredThe user account number or ID. Will be included in API request from GD or daily transaction file when the customer completes the transaction at the retailer

If Add Cash type:
accountno is used for passing the user account number or ID of the recipient

If Bill Pay type:
accountno is used for passing the user account number or ID of the payee
4accountnicknameStringOptionalOptionalNick name of the account or last four of the account number. This is used for display purposes ONLY.

If Add Cash type:
Nick name of the recipient account or last four of the recipient account number

If Bill Pay type:
Nick name of the payee account or last four of the payee account number
5emailaddrStringOptionalOptionalAlthough this parameter is optional, please let GD Biz team know in advance if existing some or all users have no emailaddr provide to GD.

If Add Cash type:
emailaddr is used for passing the address of the recipient. A valid email address of the user to be prepopulated on barcode generation page and used to email barcode link to. User can edit on page. If not provided, customer will be able to manually enter their unverified email address. (See screen shot B).

If Bill Pay type:
emailaddr is used for passing the address of the payee
6firstnameStringRequiredOptionalVerified First Name of the User

If Add Cash type:
firstname is used for passing the first name of the recipient

If Bill Pay type:
firstname is used for passing the first name of the payee
7lastnameStringRequiredOptionalVerified Last Name of the User

If Add Cash type:
lastname is used for passing the Last Name of the recipient

If Bill Pay type:
lastname is used for passing the Last Name of the payee
8zipcodeStringOptionalOptionalExample: 91342 or 91342-2123

If Add Cash type:
zipcode is used for passing the ZipCode of the recipient

If Bill Pay type:
zipcode is used for passing the ZipCode of the payee
9mobilenoNumber(10)OptionalOptionalFor an Example, 9201920190

If Add Cash type:
mobileno is used for passing the phone number of the recipient and A valid cell phone of the user to be prepopulated on barcode generation page and used text email barcode link to. User can edit on page. (See screenshot B).

If Bill Pay type:
mobileno is used for passing the phone number of bill payee
10transactionidStringRequiredRequiredTransaction Id Unique per transaction. This will be included in the daily transaction file made available for pick-up on GD’s SFTP site.
11availablelimitNumber (10,2)OptionalOptionalMax dollar amount shown to the user on the page to set proper expectation when arriving at the retailer. Default max displayed on page is the actual maximum value determined with GD Biz team per Program level, in general it is $500 by default. if actual limit of only this transaction is less than the actual maximum value of program , it must be provided. (See screen shot B)
12redirecturlStringRequiredRequiredLink to take the user back to the partner site only if user selects to go back to account summary. (See screen shot A).
13sessiontimeoutStringOptionalOptionalTimeout interval in seconds, after which the user will be redirected to the URL above. If not provided, the default used will be 600 seconds.
14sessiontimestampTimeStampRequiredRequiredPresent UTC time in seconds from January 1, 1970
15senderfirstnameStringOptionalRequiredIf Add Cash type:
senderfirstname is used for passing the first Name of the cash depositor

If Bill Pay type:
senderfirstname is used for passing the first Name of the bill payer
16senderlastnameStringOptionalRequiredIf Add Cash type:
senderlastname is used for passing the last Name of the cash depositor

If Bill Pay type:
senderlastname is used for passing the last Name of the bill payer
17senderaddressStringOptionalRequiredIf Add Cash type:
senderaddress is used for passing the address of the cash depositor.

If Bill Pay type:
senderaddress is used for passing the address of the bill payer
18senderzipcodeStringOptionalRequiredExample: 91342 or 91342-2123

If Add Cash type:
senderzipcode is used for passing the Zipcode of the cash depositor

If Bill Pay type:
senderzipcode is used for passing the Zipcode of the bill payer
19senderaccountnoStringOptionalRequiredThe user account number or ID

If Add Cash type:
senderaccountno is used for passing the account number or ID of the cash depositor.

If Bill Pay type:
senderaccountno is used for passing the account number or ID of the bill payer
20senderemailaddrStringOptionalOptionalIf Add Cash type:
senderemailaddr is used for passing the email address of the cash depositor

If Bill Pay type:
senderemailaddr is used for passing the email address of the bill payer and A valid email address of the user to be prepopulated on barcode generation page and used to email barcode link to. User can edit on page. If not provided, customer will be able to manually enter their unverified email address. (See screen shot B).
21sendermobilenoStringOptionalOptionalIf Add Cash type:
sendermobileno is used for passing the phone number of the cash depositor

If Bill Pay type:
sendermobileno is used for passing the phone number of bill payer and A valid cell phone of the user to be prepopulated on barcode generation page and used text email barcode link to. User can edit on page. (See screenshot B).
22senderdobStringOptionalOptionalDate of Birth of Sender.

DOBFormat:yyyy-MM-dd

POST DATA:

  • Field 1 on the list, partnerid should be sent as plain text
    HTTP POST Variable: partnerid Value: Numeric Value (will be provided by GDN. Value will be the same for all environments)

📘

Fields 2 through 22 should be encoded, encrypted using GDN’s public key and digitally signed using partner’s private key. GDN will use its private key to decrypt when it receives the payload and verify the sign using partner’s public key.

Below is the format of the data in plain text, which is to be sent in the form of a query string, the sample as below:

HTTP POST Variable: encrypted_data

Value without sender information: accountno=123456&accountnickname=1111&firstname=john&lastname=doe&emailaddr=[email protected]&mobileno=5551235678&transactionid=P3AC34A11&availablelimit=100.55&redirecturl=www.gdnpartner.com&sessiontimeout=600&sessiontimestamp=1416005281

Value with sender information:
accountno=100003&accountnickname=1111&emailaddr=[email protected]&firstname=john&lastname=doe&mobileno=6263755356&transactionid=5552123&availablelimit=500&redirecturl=www.partner.com&sessiontimeout=30000&sessiontimestamp=1637830053.51879&zipcode=91107&address=doe&senderfirstname=sender firstname&senderlastname=sender lastname&senderaddress=sender address&senderzipcode=91107&senderaccountno=sender_ref_1&senderemailaddr=[email protected]Note: Individual fields need NOT to be encoded/encrypted, the entire string needs to be encoded (base-64) and encrypted

Redirect URL

  • Once a user completes an eCash transaction, the user will be redirected back to the partner site.
    Returnurl: PARTNERSITEURL
  • Below are the Green Dot URLs for the partners will use to redirect their users to generate the barcode. For below testing/Staging URL, actually GDFN restricts its incoming traffic, please ensure provide which public IPs need to access this URL GDFN to do whitelist in advance, otherwise most likely you will encounter connectivity error like timeout (referring screenshot D)in case you access this URL without IP whitelist.
    Production: https://addcash.attheregister.com
    Testing/Staging: https://qa4-addcash.attheregister.com

Commonly Asked Questions

  • What kind of encoding do you support?
    Base-64

  • What type public/private key encryption is used (SSH-1, SSH-2 RSA/DSA/etc)?
    We currently support TLS 1.2 and encryption using SHA 2 256 RSA 2048 bit key.

  • How do I obtain the GDN public key and what is the method used to digitally sign the values?
    Please contact Green Dot to get the public key for the encryption. Use PKCS7 to digitally sign the message.

  • How to determine whether redirection from Partner to GD Microsite is successful, or that the encrypted and signed data is correct?
    For integration testing, if post data to GD micro site is not encrypted or signed correctly, you will result into the below Custom Error page.

Otherwise, you will see the following success page which is used for selecting retailer to do cash transfer.