Validate Registration
ValidateRegistration API Method
This method validates whether customer can purchase and be registered for a new card or not. Multiple identity types are supported to validate a new customer. A “Registration Token” returns, which is used in Sale Card Method to register the customer with the card.
Every request triggered should have a unique X-GD-RequestId value in the header.
- Introduced a new IdentityType as ConsulateId, which will be allowed only for the following countries:
 a. Guatemala
 b. Honduras
 c. Colombia
 d. Ecuador
Syntax
POST {baseUrl}/registration/validateExample Request
Success Request
POST {baseUrl}/registration/validate
Authorization: bearer {token}
Content-Type: application/json
X-GD-RequestId: 123456789
{
    "productCode": "51720",
    "personData": {
       "cellPhone": "6535738728",
       "dateOfBirth": "2004-08-24",
       "email": "[email protected]",
       "firstName": "NIEDj",
       "homeAddress": {
          "addressLine1": "164 Peachtree Street",
          "addressLine2": "SUITE 511",
          "city": "Atlanta",
          "countryCode": "USA",
          "postalCode": "17513",
          "state": "GA"
       },
       "homePhone": "5535741193",
       "identification": [
          {
             "id": "108143604",
             "issuerCountryCode": "USA",
             "type": "SSN",
             "expiryDate": null,
             "hasCubaRelationship": null, 
             "hasVenezuelaRelationship": null
}
       ],
       "lastName": "mfWKx",
       "middleName": "C"
    },
    "termsAcceptances": [
       	{
                 "termsIdentifier": "coa",
                 "termsAcceptanceFlag": true,
                 "termsAcceptanceDateTime": "2023-09-19T03:05:05Z"
          	}
           ],
    "metadata": {
       "storeId": "CC970",
       "merchantId": "FSCC0342",
       "userId": "[email protected]",
       "requestDateTime": "2023-09-19T03:06:05Z",
       "registerId": "001"
    }
 }Negative Request
POST {baseUrl}/registration/validate
X-GD-RequestId: 35977479313965
Content-Type: application/json
Authorization: Bearer {token}
{
    "productCode":"51720",
    "personData":{
        "cellPhone":"6249629180",
        "dateOfBirth":"2004-09-22",
        "email":"[email protected]",
        "firstName":"QJLkL",
        "homeAddress":{
            "addressLine1":"494 Peachtree Street",
            "addressLine2":"SUITE 390",
            "city":"Atlanta",
            "countryCode":"USA",
            "postalCode":"12844",
            "state":"GA"
        },
        "homePhone":"5639410915",
        "identification":[
            {
                "id":"107865641",
                "issuerCountryCode":"USA",
                "type":"SSN",
                "expiryDate":"2099-09-09",
                "hasCubaRelationship":null,
                "hasVenezuelaRelationship":null
            }
        ],
        "lastName":"RmGro",
        "middleName":"a"
    },
    "termsAcceptances":[
        {
            "termsIdentifier":"coa",
            "termsAcceptanceFlag":true,
            "termsAcceptanceDateTime":"2023-09-22T10:59:04Z"
        }
    ],
    "metadata":{
        "storeId":"032810293123",
        "merchantId":"FSCC0342",
        "userId":"[email protected]",
        "requestDateTime":"2023-09-22T10:59:04Z",
        "registerId":"001"
    }
}Request Parameters
| Parameter | Required(Y/N) | Format/Data Type | Pattern | Description | 
|---|---|---|---|---|
| X-GD-RequestId | Yes | String | MaxLength:50 | It is a unique transaction identifier that is generated by the retailer. | 
| requestDateTime | Yes | DateTime | 2023-08-08T12:34:56Z | Time stamp at which transaction occurred. YYYY-MM-DDTHH:mm:ssZ | 
| registerId | No | String | MaxLength: 20 | Register where the transaction occurred. | 
| userId | Yes | String | MaxLength:50 | The unique ID of the user generating the transaction. | 
| storeId | Yes | String | MaxLength: 20 | The store number associated with the retailer that sold the package. | 
| merchantId | Yes | String | MaxLength: 20 | The unique merchant Id. Defined by Green Dot – Merchant corresponding with Retailer. | 
| productCode | Yes | String | 4-7 digits | It is 4 digit Green Dot internal product code. E.g., 7680, 7681, 7682. New product has 5 digits typically. It’s required for BaaS card. | 
| personData | Yes | object | { 1, … } | The customer data to be registered. | 
| firstName | Yes | String | Max: 30 | The first name of the customer. | 
| middleName | No | String | Max: 1 | The initial letter of middle name of the customer. | 
| lastName | Yes | String | Max: 30 | The last name of the customer. | 
| dateOfBirth | Yes | Date | YYYY-MM-DD | The customer’s birth date. | 
| Yes | String | Max: 40 | The email address of the customer. | |
| cellPhone | Yes | String | 10 digits | The customer cell phone number. | 
| homePhone | No | String | 10 digits | The customer Home phone number of the customer. | 
| HomeAddress | Yes | object | { 1, … } | The address of the customer. | 
| addressLine1 | Yes | String | Max: 30 | The mailing address of the customer. | 
| addressLine2 | No | String | Max: 30 | Second line of address of customer | 
| city | Yes | String | Max: 30 | The city in which customer resides. | 
| state | Yes | String | Max: 2 | The state in which the customer city belongs to. | 
| postalCode | Yes | String | Min: 5 Max:10 | Postal code of the customer address. | 
| countryCode | No | String | "USA" | CountryCode in ISO 3166-1 alpha-3 format. | 
| identification | Yes | Array | { 1, … } | Array of Identification provided by the customer. | 
| type | Yes | String | Min: 3 , Max: 21 | Accepted type of identification that can be provided by the user are as follows: 
 | 
| id | Yes | String | Min: 1 , Max: 50 | The unique identification number of user. For example: SSN, passport number. | 
| expiryDate | No | Date | “YYYY-MM-DD" | Provided identification expiry date in “YYYY-MM-DD” format. Note that when type is “NationalIdCard”, "ConsulateID", or “Passport”, the expiryDate has to be provided. | 
| issuerCountryCode | Yes | String | Min: 3 | Country that issued the identification card in ISO 3166-1 alpha-3 format. | 
| hasCubaRelationship | No | bool | true/false | It’s mandatory if IssuerCountryCode is CUB | 
| hasVenezuelaRelationship | No | bool | true/false | It’s mandatory if IssuerCountryCode is VEN. | 
| termsAcceptances | Yes | array | {1, …} | Sets of terms acceptance info that customer signed | 
| termsIdentifier | Yes | string | Max:10 | Identifier of the terms. “coa” is mandatory. However, “daa” , “privPlcy” & “eca” are optional. | 
| termsAcceptanceFlag | Yes | bool | true/false | Whether customer accepted or not | 
| termsAcceptanceDateTime | Yes | datetime | YYYY-MM-ddTHH:mm:ssZ | The datetime that customer accepts the terms in UTC format. | 
Example Response
Success Response
HTTP/1.1 200 OK
Content-Type: application/json
X-GD-RequestId: 201309181254
X-GD-ResponseId: d928f8bf-814a-4b63-bdee-aea9a7e5429d
X-GD-ResponseCode: 0
{
    "metadata": {
        "requestId": "201309181254",
        "responseCode": 0,
        "responseDescription": "Success",
        "responseDateTime": "2013-09-18T17:53:07.1411753Z",
        "responseId": "d928f8bf-814a-4b63-bdee-aea9a7e5429d"
    },   
    "registrationToken": "2E28C3D0-A1EC-4178-A707-77AFD46D4B24",
    "validateRegistrationCure": "Healthy"
}Negative Response
HTTP/1.1 400 Bad Request
Content-Type: application/json
X-GD-RequestId: 35977479313965
X-GD-ResponseCode: 800
X-GD-ResponseId: c1e20f33-1160-43d0-8a0f-b1cc9d8a124c
{
    "registrationToken":null,
    "validateRegistrationCure":null,
    "metadata":{
        "requestId":"35977479313965",
        "responseId":"c1e20f33-1160-43d0-8a0f-b1cc9d8a124c",
        "responseDateTime":"2023-09-22T10:59:06.4041579Z",
        "responseCode":800,
        "responseDescription":"Store was not found"
    }
}Response Parameters
| Parameter | Required(Y/N) | Format/Data Type | Pattern | Description | 
|---|---|---|---|---|
| requestId | Yes | String | MaxLength:50 | The unique request ID from request. | 
| responseId | Yes | String | MaxLength:50 | The unique response identifier (generated by GreenDot). | 
| responseDateTime | Yes | DateTime | 2023-09-07T16:12:23.4541445+08:00 | Time stamp at which transaction occurred. YYYY-MM-DDTHH:mm:ssfffffffK | 
| responseCode | Yes | Numeric | MaxLength:4 | Indicates success and failure of the response codes. It is in the numeric format. | 
| responseDescription | Yes | String | MaxLength:255 | Describes the Response Code in more detail. It is in the String format. | 
| registrationToken | Yes | String | e5843e05-d367-4bf1-a223-3af46ae18802 | The unique registration identifier, which is generated by GreenDot system. It will only have value when response is success. | 
| validateRegistrationCure | No | String | “IDV” | Health of the CIP validation. Healthy/IDV/None. | 
Response Cases
| Code | Code Text | Response Description | Explanation of the Response Code | 
|---|---|---|---|
| 0 | Success | Success | Customer passes the registration validation and good to do card sale. | 
| 100 | InvalidParameter | •	CellPhone has to be 10 digits. | Invalid parameter when validating the request. Examples: MerchantID not supplied, StoreID not supplied, Invalid identityType. | 
| 130 | InvalidMerchant | • InvalidMerchant | MerchantId in request has not been found/enabled in the system. | 
| 500 | CIPFailed | •	Hard decline | Customer gets hard declined by CIP. | 
| 800 | InvalidStore | • Store was not found | Store is not found; store is not for the partner or store does not support this operation. | 
| 861 | RetailChainUserNotFound | • User is not found. | UserID in request is not found in system. | 
| 862 | RetailChainUserNotActive | • User is not active. | UserId in request is not active in system. | 
| 451 | SoftDeclineVerifyPending | • IDV soft decline | Customer gets soft declined by CIP process which is curable by uploading further IDV document in FSC IdvUpload endpoint. There’s ValidateRegistrationCure in response to indicate which cure customer can perform. | 
| 453 | CustomerHasSsn | • Customer has SSN | CIP check result indicates customer has SSN but not use it to register. Customer may use SSN to submit registration again. | 
| 600 | UnableToProcessRequest | •	The product code XXXXX is unknown for this program code. | Non-CIP error happens when processing presignup. | 
| 1000 | GeneralFailure | • GeneralFailure | Service failure/unexpected exception in system | 
Updated 15 days ago
