AuthCommit
Retail Consumption AuthCommit (Step 2 of 2-Phase)
Completes the transaction authorized in the Auth request. Return with appropriate response for the commit result. On successful response, Green Dot will mark the funds used and Partner is expected to credit the customer’s account upon a successful response [Please see Appendix A for response code details.]
In a 2-Phase transaction, an AuthCommit is required to complete the Transaction.Any exceptions to this will be handled during the settlement process.
If the AuthCommit Response is not returned within a timely manner (30 seconds), the AuthCommit Request will be retried every 3 minutes (using a different RequestID and the same OriginalConfirmationID) for up to 10 hours until an AuthCommit Response is received. AdditionalAuthCommit Requests for the same Auth should be considered as a re-tryand only one AuthCommit Request should be applied to the customer's account per Auth Request based on the OriginalConfirmationID. The original response code should be returned when additional AuthCommit Requests are received.
Diagrams below describe the structures of the AuthCommitRequest and AuthCommitResponse objects:
Details of each attribute in the AuthCommitRequest and AuthCommitResponse objects should be listed in the expected order in the tables below:
AuthCommit Request
RequestHeader
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
CustomerANI | Optional | String | 10 | Phone number area code first. To be provided if initiated by IVR. Must be all numerical digits. Either CustomerIP or CustomerANI needs to be provided |
CustomerIP | Optional | String | 20 | Web users IP address. To be provided if initiated by Web.Either CustomerIP or CustomerANI needs to be provided |
PartnerIP | Optional | String | 20 | Partner’s IP address. To be provided if initiated by Web. |
PartnerCode | Yes | String | 50 | Unique code to identify partner. |
Password | Optional | String | 50 | Password for authentication |
UserName | Optional | String | 50 | UserName for authentication |
Channel | Yes | Integer | N/A | “1” for Unknown “2” for web application “3” for IVR “4” for Desktop “5” for Stores POS "6" for Mobile |
RequestDateTime | Yes | DateTime | N/A | Timestamp of Submitted Request in UTC time. |
RequestID | Yes | String | 50 | Unique Request Identifier. |
Version | Yes | String | 10 | Value = 2.0.0Format: .. |
Amount | Yes | Decimal | N/A | Transaction Amount. |
Customer
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
Address1 | N/A | String | 35 | Address |
Address2 | N/A | String | 35 | Address |
City | N/A | String | 25 | City |
CustomerReferenceNumber | N/A | String | 50 | Customer reference number. |
DLNumber | N/A | String | 30 | Driver License Number or State ID |
DLState | N/A | String | 2 | Driver License Number or State ID issue state. |
DOB | N/A | String | 10 | Date of Birth. YYYY-MM-DD |
FirstName | N/A | String | 25 | First Name of Customer. |
LastName | N/A | String | 25 | Last Name of Customer. |
MiddleName | N/A | String | 25 | Middle Name of Customer. |
Phone | N/A | String | 10 | Phone Number. |
SSN | N/A | String | 9 | Preferredtohave customer full SSN or Tax IDelse last 4 digits of customer SSN or Tax IDrequired. |
State | N/A | String | 2 | State |
ZipCode | N/A | String | 10 | USPS zip code. |
Description | Yes | String | 255 | Description for this request |
DictionaryEntry | Optional | Dictionary<string, string> | N/A | Array of key-value pairs. |
OriginalConfirmationID | Yes | String | 50 | ConfirmationID from the TransactResponse or AuthResponse |
PartialApproval | Yes | Boolean | N/A | Default=false. Reserved for Future. To approve a portion of the original transaction amount in the authorization request when the transaction amount exceeds the funds available on the Green Dot Product. |
PaymentType | Yes | Integer | N/A | “1” for Cash“2” for Check“3” for MoneyPak“7” for Barcode“8” for Direct Deposit“9” for Mobile Remote Deposit Capture (MRDC) |
ProgramNumber | Yes | String | 20 | Program identifier. Example: BIN |
SourceAccount
Information regarding the Account from which the funds will be moved. Ex: MoneyPak
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
AccountNumber | Yes | String | 50 | Account Number or Barcode number of the given AccountType. |
AccountReferenceNumber | Optional | String | 50 | Reference Number of the given AccountType.For Barcode funding, this will be the barcode transaction number. For MoneyPak, this will be the PIN reference number. For Disbursements, this will be the Green Dot Customer. |
AccountType | Yes | Integer | N/A | “1” for MoneyPak PIN “4” for POS Cash Funding “5” for Check Funding “6” for Promotion Funding “7” for Barcode Funding “8” for Disbursement “9” for Barcode Cash Pick-Up |
SubAccountNumber | N/A | String | 50 | |
SubAccountReferenceNumber | N/A | String | 50 |
TargetAccount
Information regarding the Account to which the funds will be moved. Ex: Partner’s Customer Account
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
AccountNumber | Yes | String | 50 | Customer Account Number |
AccountReferenceNumber | Optional | String | 50 | Partner's unique code identifying customer account. |
AccountType | Yes | Integer | N/A | “2” for Partner’s Customer –Card “3” for Partner’s Customer –Other |
SubAccountNumber | Optional | String | 50 | Customer’s sub account number. |
SubAccountReferenceNumber | Optional | String | 50 | Partner's unique code identifying customer’s sub-account. |
TransactionReferenceNumber | Optional | String | 50 | Unique Identifier for this request |
AuthCommit Response
FirstName, LastName, ZipCode are required for ALL GDN Partners, including Point of Banking (POB) Partners.
ResponseHeader
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
RequestID | Yes | String | 50 | Request Identifier echoed back from request |
ResponseCode | Yes | String | 2 | Indicates successful and non-successful responses. |
ResponseDateTime | Yes | DateTime | N/A | Timestamp of response in UTC time. |
ResponseID | Yes | String | 50 | Unique Response Identifier |
ResponseText | Yes | String | 255 | Response code description. |
Version | Yes | String | 10 | Value = 2.0.0Format: .. |
Amount | Yes | Decimal | N/A | Transacted Amount |
Balance | Optional | Decimal | N/A | Target Account Balance. Only if response is success. |
ConfirmationID | Yes | String | 50 | Unique Confirmation number. Only if response is success.For AccountType “7” (Barcode Funding), the ConfirmationID will be sent to user via email/SMS. Green Dot and partner customer support teams may use this value to look-up/search transactions |
Customer
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
Address1 | Optional | String | 35 | Address |
Address2 | Optional | String | 35 | Address |
City | Optional | String | 25 | City |
CustomerReferenceNumber | Yes | String | 50 | Customer reference number. |
DLNumber | Optional | String | 30 | Driver License Number or State ID. |
DLState | Optional | String | 2 | Driver License Number or State ID issue state. |
DOB | Optional | String | 10 | Date of Birth. YYYY-MM-DD |
FirstName | Yes | String | 25 | First Name of Customer. |
LastName | Yes | String | 25 | Last Name of Customer. |
MiddleName | Optional | String | 25 | Middle Name of Customer. |
Phone | Optional | String | 10 | Phone Number. |
SSN | Optional | String | 9 | Preferredtohave customer full SSN or Tax IDelse last 4 digits of customer SSN or Tax IDrequired. |
State | Optional | String | 2 | State |
ZipCode | Yes | String | 10 | USPS zip code. |
DictionaryEntry | Optional | String | N/A | Array of key-value pairs. |
SourceAccount
Information regarding the Account from which the funds will be moved. Ex: MoneyPak
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
AccountNumber | Yes | String | 50 | Account Number or Barcode number of the given AccountType. |
AccountReferenceNumber | Optional | String | 50 | Reference Number of the given AccountType.For Barcode funding, this will be the barcode transaction number. For MoneyPak, this will be the PIN reference number. For Disbursements, this will be the Green Dot Customer reference number |
AccountType | Yes | Integer | N/A | “1” for MoneyPak PIN “4” for POS Cash Funding “5” for Check Funding “6” for Promotion Funding “7” for Barcode Funding “8” for Disbursement “9” for Barcode Cash Pick-Up |
SubAccountNumber | Optional | String | 50 | |
SubAccountReferenceNumber | Optional | String | 50 |
TargetAccount
Information regarding the Account to which the funds will be moved. Ex: Partner’s Customer Account
Field | Required | Type | Max Length | Description |
---|---|---|---|---|
AccountNumber | Yes | String | 50 | Customer Account Number. |
AccountReferenceNumber | Optional | String | 50 | Partner's unique reference number identifying customer account. |
AccountType | Yes | Integer | N/A | “2” for Partner’s Customer –Card “3” for Partner’s Customer –Other |
SubAccountNumber | Optional | String | 50 | Customer’s sub account number. |
SubAccountReferenceNumber | Optional | String | 50 | Partner's unique reference number identifying customer’s sub-account. |
Sample Request/Response
Request
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><AuthCommit xmlns="http://greendotcorp.com/WebServices/Corporate/GDNPartnerAPI/"><request xmlns:a="https://partners.greendotcorp.com/GDCPartners/GDCWS_GDNPartnerAPI/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><a:Audit i:nil="true"></a:Audit><a:Authentication><a:PartnerCode>GreenDot</a:PartnerCode><a:Password>********</a:Password><a:UserName>********</a:UserName></a:Authentication><a:Channel>5</a:Channel><a:RequestDateTime>2020-03-10T07:09:00.808077Z</a:RequestDateTime><a:RequestID>AuthCommit2020-03-10T15:08:40</a:RequestID><a:Version>2.0.0</a:Version><a:Amount>500.0000</a:Amount><a:Customer i:nil="true"></a:Customer><a:Description>TestAuthCommit</a:Description><a:DictionaryEntry xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays"><b:KeyValueOfstringstring><b:Key>Partner</b:Key><b:Value>***</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreNumber</b:Key><b:Value>****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreState</b:Key><b:Value>**</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreName</b:Key><b:Value>***</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreCity</b:Key><b:Value>****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreAddress1</b:Key><b:Value>****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreAddress2</b:Key><b:Value>****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreZipcode</b:Key><b:Value>****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>RetailerName</b:Key><b:Value>*****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreTransactionDate</b:Key><b:Value>06/05/2023 22:45:00</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreCounty</b:Key><b:Value i:nil="true" /></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreLatitude</b:Key><b:Value>*****</b:Value></b:KeyValueOfstringstring><b:KeyValueOfstringstring><b:Key>StoreLongitude</b:Key><b:Value>*****</b:Value></b:KeyValueOfstringstring></a:DictionaryEntry><a:OriginalConfirmationID>33fa5cf9-cff4-4e8a-8cc2-f896112bb07c</a:OriginalConfirmationID><a:PartialApproval>false</a:PartialApproval><a:PaymentType>7</a:PaymentType><a:ProgramNumber>*******</a:ProgramNumber><a:SourceAccount><a:AccountNumber>83**********************13</a:AccountNumber><a:AccountReferenceNumber>81*********13</a:AccountReferenceNumber><a:AccountType>7</a:AccountType><a:SubAccountNumber i:nil="true"></a:SubAccountNumber><a:SubAccountReferenceNumber>32*****00</a:SubAccountReferenceNumber></a:SourceAccount><a:TargetAccount><a:AccountNumber>44************41</a:AccountNumber><a:AccountReferenceNumber>44************41</a:AccountReferenceNumber><a:AccountType>3</a:AccountType><a:SubAccountNumber i:nil="true"></a:SubAccountNumber><a:SubAccountReferenceNumber i:nil="true"></a:SubAccountReferenceNumber></a:TargetAccount><a:TransactionReferenceNumber i:nil="true"></a:TransactionReferenceNumber></request></AuthCommit></s:Body></s:Envelope >
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns3:AuthCommitResponse xmlns="https://partners.greendotcorp.com/GDCPartners/GDCWS_GDNPartnerAPI/" xmlns:ns2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:ns3="http://greendotcorp.com/WebServices/Corporate/GDNPartnerAPI/" xmlns:ns4="http://schemas.microsoft.com/2003/10/Serialization/"><ns3:AuthCommitResult><RequestID>AuthCommit2020-03-10T15:08:40</RequestID><ResponseCode>00</ResponseCode><ResponseDateTime>2020-03-10T07:09:03.779Z</ResponseDateTime><ResponseID>6508036242667932221466390292234324</ResponseID><ResponseText>Success</ResponseText><Version>2.0.0</Version><Amount>500.0000</Amount><ConfirmationID>65624266793340992217088944660803</ConfirmationID><Customer><CustomerReferenceNumber>231242</CustomerReferenceNumber><FirstName>Test</FirstName><LastName>Bris</LastName><ZipCode>94040</ZipCode></Customer><DictionaryEntry xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"></DictionaryEntry><SourceAccount><AccountNumber>83**************************13</AccountNumber><AccountReferenceNumber>81************13</AccountReferenceNumber><AccountType>7</AccountType><SubAccountNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"></SubAccountNumber><SubAccountReferenceNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"></SubAccountReferenceNumber></SourceAccount><TargetAccount><AccountNumber>44************41</AccountNumber><AccountReferenceNumber>44************41</AccountReferenceNumber><AccountType>3</AccountType><SubAccountNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"></SubAccountNumber><SubAccountReferenceNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"></SubAccountReferenceNumber></TargetAccount></ns3:AuthCommitResult></ns3:AuthCommitResponse></soap:Body></soap:Envelope >
Updated about 1 month ago