Opening a bank account
Opening a bank account has been simplified with the use of bank products. Rather than specify all of the specific attributes when opening a bank account, we now only need to know which bank product the account relates to, and information about the owners, controllers, and beneficiaries related to the bank account.
Prerequisites
-
You will need your
bank-account-product-accounts-url(shown as$BANK_ACCOUNT_PRODUCT_ACCOUNTSin the examples below). Yourbank-account-product-accounts-urlis one of the URLs returned when you list yourbank-account-products. If you're unfamiliar with them, learn more about bank products. -
To get your
bank-account-product-accounts-urlyou will need yourorganization-bank-accounts-url. Yourorganization-bank-accounts-urlis one of the URLs returned when you request yourorganization-url. If you don't have yourorganization-urlyet, check out our getting started guide.
Request
- Set the
owner-urlto the legal person URL who is entitled to the money in the account - Set the
beneficiary-urlto the legal person URL who is entitled to the money in the account
All bank account products require you to specify an owner (except operational accounts), but not all require a beneficiary (although if you specify a valid one the request will still be accepted)
curl "https://api.griffin.com${BANK_ACCOUNT_PRODUCT_ACCOUNTS_URL}" \
-X 'POST' \
-H "Authorization: GriffinAPIKey $GRIFFIN_API_KEY" \
-H 'Content-Type: application/json' \
--data '
{
"display-name": "account name",
"owner-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
"beneficiary-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA"
}'
Response
{
"account-submissions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/submissions",
"bank-account-product-url": "/v0/bank/products/bp.IGJhbmstcHJvZHVjdC1pZA",
"account-restricted": false,
"account-payments-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/payments",
"pooled-account-memberships-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/membership",
"account-admissions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/admissions",
"bank-product-type": "savings-account",
"display-name": "Reserve a/c",
"controller-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
"pooled-funds": false,
"account-status": "closing",
"owner-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
"created-at": "2019-08-24T14:15:22Z",
"opened-at": "2019-08-24T14:15:22Z",
"close-account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/actions/close",
"available-balance": {
"currency": "GBP",
"value": "00.00"
},
"bank-addresses": [
{
"account-holder": "string",
"bank-id-code": "gbdsc",
"bank-id": "123456",
"account-number": "12345678",
"account-number-code": "bban"
}
],
"account-transactions-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA/transactions",
"account-url": "/v0/bank/accounts/ba.IGJhbmstYWNjb3VudC1pZA",
"beneficiary-url": "/v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA",
"primary-account": false,
"account-balance": {
"currency": "GBP",
"value": "00.00"
},
"savings-type": "easy-access"
}
This response indicates that you have successfully requested the creation of a new bank account. The account-status will likely be opening since their are some background preparatory tasks that need to finish befoe the account can be used. These take place automatically, so you can simply poll the account-url endpoint until the account-status is open.
NOTE: If you have created a webhook for your
organisation you can also listen
for the account-status-updated webhook event and track account-status.