How to open a deposit account
CR provides a number of different types of deposit accounts, including DDAs and Certificates of Deposit (CDs or time deposit accounts).
To open any kind of deposit account you must have a valid product ID for the type of account you want to open, and a customer ID (onboarded customer record ID) for the account holder. Note that the account holder must have at least one address and phone number in their customer record, and their OFAC status must be Clear. In addition, the classification of the customer must match the configured classification for the product. For example, only business customers can be added to a business product.
In this tutorial, you'll learn how to
Open a customer master account
If you are new to account management we recommend you read the account management documentation before starting this tutorial.
The tutorial assumes you have a knowledge of APIs and how they work. Refer to the API overview for more details.
The tutorial uses these API endpoints:
API |
Description |
---|---|
Opens a deposit account for a customer |
The tutorial uses these webhooks:
Webhook |
Description |
---|---|
|
A new account was opened |
Before you begin
Make sure you have:
-
Partner ID
-
Product ID (defines the type of account being opened)
We highly recommend you include an idempotency key in your request header to provide duplicate protection in the event of a failure. Read more about idempotency keys here.
1. Register the relevant webhook events
To receive the webhook events for this tutorial both partner accounts need to register each specific webhook event type. Once you are registered, the event objects are sent to the registered URLs.
The event object contains a list of resource identifiers used to download details on each event.
2. Open a DDA account
This tutorial shows you how to create a deposit account. In this scenario, you'll open an account for Jana Parker, a customer who you successfully onboarded.
Closed accounts can only be re-opened by the CR Ops teams. To re-open an account please open a support ticket.
a. To open an account
-
Call
POST /v1/dda/accounts
. For this call, some attributes are required. A full list of attributes is found here.CopySample request with JSON
POST /core/v1/dda/accounts
{
"customerId": "59e3bc15-bbec-4990-88e9-a9a600d3296c",
"productId": "44015e68-1afb-40fc-9497-abc1014f52da",
"title": "Jana Parker",
"statementAddress": {
"street1": "257 Dalton Groves",
"city": "Barton City",
"state": "MI",
"postalCode": "48705",
"countryCode": "US"
}
} -
A successful API call returns a JSON response with the details of the new account.
Sample response with JSON
{
"accountNumber": "2348751955",
"status": "Active",
"accountType": "Deposit",
"ledgerType": "Passthrough",
"classification": "Personal",
"productType": "Checking",
"productId": "44015e68-1afb-40fc-9497-abc1014f52da",
"title": "Jana Parker",
"currentBalance": 0,
"holdAmount": 0,
"transactionCount": 0,
"availableBalance": 0,
"creditLimit": 0,
"customerId": "59e3bc15-bbec-4990-88e9-a9a600d3296c",
"statementAddress": {
"street1": "257 Dalton Groves,
"city": "Barton City",
"state": "MI",
"postalCode": "48705",
"countryCode": "US"
},
"openedAt": "2021-01-26T09:46:10.0931461-05:00",
"lastMaintenanceAt": "2021-01-26T09:46:10.0931461-05:00",
"partnerId": "e6c3824a-377f-44d5-a2f6-a9a600c9b37e",
"lastModifiedAt": "2021-01-26T09:46:10.1011462-05:00"
}
-
The
accountNumber
field provides the account number for the new account. -
In the response example, the account is classified as
Personal
because the user configured the product classification as Personal. The account classification always matches the configured product classification.
-
The account status is automatically updated to
Active
, and is immediately available for use. This triggers theCore.Account.Opened
event.
Core.Account.Opened Event Details
{
"id": "259cdbca-6a89-4af8-a50e-ada3010fb13f",
"eventName": "Core.Account.Opened",
"status": "Pending",
"partnerId": "e6c3824a-377f-44d5-a2f6-a9a600c9b37e",
"createdAt": "2021-01-26T09:48:10.1011462-05:00",
"resources": [
"core/v1/dda/accounts/2235223803"
],
"details": []
}