POST /beta/partner/customer/v1/create
The /beta/partner/customer/v1/create endpoint creates a new end customer record. You can provide as much information as you have available. If any required information is missing for the products you intend to use, it will be listed in the requirements_due field of the response.
Servers
- https://production.plaid.com
- https://sandbox.plaid.com
Request headers
| Name | Type | Required | Description |
|---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
| Name | Type | Required | Description |
|---|---|---|---|
client_id |
String | No |
Your Plaid API |
questionnaires |
Object | No |
The questionnaires for the end customer. |
questionnaires.cra |
Object | No |
The CRA questionnaire for the end customer. |
questionnaires.cra.is_third_party_involved |
Boolean | No |
Denotes whether the third party is involved. |
questionnaires.cra.purposes |
Object | No |
A map of permissible purposes to their corresponding use cases. |
questionnaires.cra.purposes.EMPLOYMENT |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.EMPLOYMENT.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.INSURANCE_UNDERWRITING |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.INSURANCE_UNDERWRITING.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.WRITTEN_INSTRUCTION |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.WRITTEN_INSTRUCTION.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.EXTENSION_OF_CREDIT_OR_ACCOUNT_REVIEW |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.EXTENSION_OF_CREDIT_OR_ACCOUNT_REVIEW.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.LICENSE_ELIGIBILITY |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.LICENSE_ELIGIBILITY.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.BUSINESS_NEED_ACCOUNT_REVIEW |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.BUSINESS_NEED_ACCOUNT_REVIEW.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.BUSINESS_NEED_TRANSACTION |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.BUSINESS_NEED_TRANSACTION.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.purposes.RISK_ASSESSMENT |
Object | No |
The list of use cases associated with a given permissible purpose. |
questionnaires.cra.purposes.RISK_ASSESSMENT.use_cases[] |
Array | No |
List of use cases for the given permissible purpose. |
questionnaires.cra.is_technical_service_provider_involved |
Boolean | No |
Denotes whether the technical service provider is involved. |
application_name |
String | Yes |
The name of the end customer's application. This will be shown to end users when they go through the Plaid Link flow. The application name must be unique and cannot match the name of another application already registered with Plaid. |
website |
String | Yes |
The end customer's website. |
legal_entity_name |
String | No |
The end customer's legal name. This will be shared with financial institutions as part of the OAuth registration process. It will not be shown to end users. |
billing_contact |
Object | No |
The billing contact for the end customer. Defaults to partner's billing contact if omitted. |
billing_contact.family_name |
String | No | |
billing_contact.given_name |
String | No | |
billing_contact.email |
String | No | |
bank_addendum_acceptance |
Object | No |
The bank addendum acceptance for the end customer. |
bank_addendum_acceptance.customer_agreement_timestamp |
String | No |
The timestamp of when the end customer accepted the bank addendum in ISO 8601 format ( |
bank_addendum_acceptance.customer_accepted |
Boolean | No |
Denotes whether the end customer has accepted the bank addendum terms. |
bank_addendum_acceptance.customer_ip_address |
String | No |
The IP address of the end customer when they accepted the bank addendum. |
customer_support_info |
Object | Yes |
This information is public. Users of your app will see this information when managing connections between your app and their bank accounts in Plaid Portal. Defaults to partner's customer support info if omitted. This field is mandatory for partners whose Plaid accounts were created after November 26, 2024 and will be mandatory for all partners by the 1033 compliance deadline. |
customer_support_info.contact_url |
String | No | |
customer_support_info.email |
String | No |
This field is mandatory for partners whose Plaid accounts were created after November 26, 2024 and will be mandatory for all partners by the 1033 compliance deadline. |
customer_support_info.link_update_url |
String | No | |
customer_support_info.phone_number |
String | No | |
products[] |
Array | No |
The products to be enabled for the end customer. If empty or |
logo |
String | No |
Base64-encoded representation of the end customer's logo. Must be a PNG of size 1024x1024 under 4MB. The logo will be shared with financial institutions and shown to the end user during Link flows. A logo is required if |
is_diligence_attested |
Boolean | No |
Denotes whether or not the partner has completed attestation of diligence for the end customer to be created. |
company_name |
String | Yes |
The company name of the end customer being created. This will be used to display the end customer in the Plaid Dashboard. It will not be shown to end users. |
create_link_customization |
Boolean | No |
If Important: Data Transparency Messaging (DTM) use cases will not be copied to the end customer's Link customization unless the Publish changes button is clicked after the use cases are applied. Link will not work in Production unless the end customer's DTM use cases are configured. For more details, see Data Transparency Messaging. |
secret |
String | No |
Your Plaid API |
technical_contact |
Object | No |
The technical contact for the end customer. Defaults to partner's technical contact if omitted. |
technical_contact.family_name |
String | No | |
technical_contact.given_name |
String | No | |
technical_contact.email |
String | No | |
address |
Object | Yes |
The end customer's address. |
address.region |
String | No | |
address.postal_code |
String | No | |
address.country_code |
String | No |
ISO-3166-1 alpha-2 country code standard. |
address.street |
String | No | |
address.city |
String | No | |
redirect_uris[] |
Array | No |
A list of URIs indicating the destination(s) where a user can be forwarded after completing the Link flow; used to support OAuth authentication flows when launching Link in the browser or another app. URIs should not contain any query parameters. When used in Production, URIs must use https. To specify any subdomain, use |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.