Create Recipients
Create Customer Profile API
This API creates a recipient customer profile in the Green Dot instant transfer system. As part of that, the customer information goes through Green Dot's verification process configured for this partner before initiating any further API calls, ensuring all required information was passed and there are no OFAC or compliance problems with the recipient. The profile is needed before a customer links with an external card. The same customer profile can have multiple card accounts linked to it, and the target card accounts must always be linked to a target receiving customer.
Business Logic
- CustomerToken – If this field is left blank
- When this field is mandatory, the partner must provide a unique value.
- When this field is optional and the request contains a CustomerToken value, the same value is used. Otherwise, the Instant Transfer Service generates a GUID as the CustomerToken.
- Idempotent Check -- This check is based on the CustomerToken. If the request contains a value that already exists in the database, it returns the Record already exists error.
- DB Level Encryption -- This encryption is based on DateOfBirth.
- CustomerID in DB -- As per Green Dot standards, the CustomerID is a GUID that the Instant Transfer service generates.
Syntax / URL
POST /programs/{programCode}/customers
Request Header
Field Name | DataType | Description | Format | Values Allowed | Required |
---|---|---|---|---|---|
ProgramCode | string | Partner program code | max 20 characters min 2 characters | a-z, A-Z, hyphen, underscore, 0-9 | Yes |
Request
Encrypted Request Data
Field | Required (Y/N/C) | Description | Format | Format |
---|---|---|---|---|
data | Y | encrypted request | string |
Request Body Parameters
Field Name | DataType | Description | Format | Values Allowed | Required | BaaS Specification |
---|---|---|---|---|---|---|
CustomerToken | string | Unique identifier of customer, the Samsung PPID | max 50 characters | a-z, A-Z, hyphen, underscore, 0-9 | Conditional | |
FirstName | string | Customer's First name from the Samsung Account | Min 1 characters Max 35 characters | a-z, A-Z, 0-9, hyphen(-), space, period(.), slash(/), questionMark(?), colon(:), opening paranthesis( ( ), closing paranthesis( ) ), comma(,), apostrophe('), Plus(+) | Yes | Must be 1 - 35 characters long. Cannot be more than 35 characters |
MiddleName | string | Customer's Middle name | Min 1 characters Max 35 characters | a-z, A-Z, 0-9, hyphen(-), space, period(.), slash(/), questionMark(?), colon(:), opening paranthesis, closing paranthesis, comma(,), apostrophe('), Plus(+) | No | Must be 2 - 35 characters long. Cannot be more than 35 characters. |
LastName | string | Customer's Last name from Samsung Account | Min 2 characters Max 35 characters | a-z, A-Z, 0-9, hyphen(-), space, period(.), slash(/), questionMark(?), colon(:), opening paranthesis, closing paranthesis, comma(,), apostrophe('), Plus(+) | Yes | Must be 2 - 35 characters long. Cannot be more than 35 characters. |
string | Customer's Email validated by Samsung | Min 6 characters Max 255 characters | a-Z, A-Z, 0-9, underscore, hyphen, period, ampersand, @ | Yes | Required for Samsung to provide | |
PhoneNumber | string | Customer's phone | only allow 10 characters | 0-9 | No | Samsung should pass if available. Samsung should pass it for RemoteP2P scenarios. |
DateOfBirth | date | Customer's Date of Birth from Samsung Account | YYYY-MM-DD | DOB should be less than current date and Min year should be 1901 | Conditional | Must be in the format: YYYY-MM-DD. |
AddressLine1 | string | Customer's Address Line1 | Min 0 characters Max 255 characters | a-z, A-Z, 0-9, hyphen(-), space, period(.), slash(/), questionMark(?), colon(:), opening paranthesis, closing paranthesis, comma(,), apostrophe('), Plus(+) | No | o Must be 2 - 40 characters long. o Must be the user’s home address. o Cannot be a PO Box or non-U.S. address. Note: Discuss any restrictions for selling in U.S. Territories with your Green Dot onboarding team |
AddressLine2 | string | Customer's Address Line2 | Min 0 characters Max 255 characters | a-z, A-Z, 0-9, hyphen(-), space, period(.), slash(/), questionMark(?), colon(:), opening paranthesis, closing paranthesis, comma(,), apostrophe('), Plus(+) | No | If provided, must be 1 - 40 characters long |
City | string | Customer's city | Min 0 characters Max 50 characters | a-z, A-Z, 0-9, hyphen(-), space, period(.), slash(/), questionMark(?), colon(:), opening paranthesis, closing paranthesis, comma(,), apostrophe('), Plus(+) | No | |
State | string | Customer's state | Min 0 characters Max 2 characters | A-Z, a-z | No | State: Must be 2 characters long |
ZipCode | string | Customer's Zipcode | max 5 characters min 5 characters | 0-9 | No | o zipCode must be 5 digits only and in the format 99999. o No extended zip codes are allowed. o If an extended zip code is provided, the extended digits will be removed by the system. |
Request Sample
{
"firstName": "tpgFN",
"lastName": "tpgLN",
"nickName": "string",
"middleName": "string",
"email": "string",
"phoneNumber": "string",
"dateOfBirth": "string",
"address": {
"addressLine1": "string",
"addressLine2": "string",
"city": "string",
"state": "string",
"zipCode": "string"
},
"customerToken": "52d7eb75-8f83-4467-88ef-8008a7aa9a4e",
}
Fields Encrypted Request
{
"salt": "eb6c967d-765a-4b18-9a6e-d4eb4df69efa",
"customerToken": "52d7eb75-8f83-4467-88ef-8008a7aa9a4e",
"encryptedData": {
"version": "EC_v1",
"ephemeralPublicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExwDdXm5e3P9+/nTAFW5Y+WJahmHhtbRlGwpmtoEJyiQCqBtC8NhQVsIVIq874XwY+8Yzk8LFCcdvoHn4zFwjMA==",
"publicKeyHash": "PiRV5ko8JYGxAtcNb9WV4aVg7aXIp8EsstmeUqqWzT8=",
"data": "DfAHBPjSNYP6umhaD9R0K4rNoQZpe/gWjwZs52o="
}
}
Customer Statuses
CustomerStatus | Description |
---|---|
Pending | Before the first transfer |
Verified | After the first transfer |
OFACMatch-Pending | N/A |
OFACMatch-Confirmed | N/A |
Locked | Locked |
Closed | Closed |
Response
Response Messages
HTTP Status Code | Response Message |
---|---|
201 | Customer profile created successfully |
401 | Unauthorized access, wrong token access or expired |
502 | Service unavailable, try again later or contact IT support |
503 | Server Error |
Sample Response Body
{
"customerToken": "eb6c967d-765a-4b18-9a6e-d4eb4df69efa",
"status": "Verified",
"responseDetails": [
{
"code": 0,
"subCode": 0,
"description": "string"
}
]
}
Updated 2 days ago