Skip to main content

Open an operational account

An operational account is a bank account for managing your organisation's own funds. Learn more about bank accounts.

Prerequisites

  • You will need your organization-bank-accounts-url (shown as $ORGANIZATION_BANK_ACCOUNTS_URL in the examples below). Your organization-bank-accounts-url is one of the URLs returned when you request your organization-url. If you don't have your organization-url yet, check out our getting started guide.

Request

  • Set the bank-product-type to operational-account.
  • Optionally, pick a display-name for the account.
curl "https://api.griffin.com${ORGANIZATION_BANK_ACCOUNTS_URL}" \
-X 'POST' \
-H "Authorization: GriffinAPIKey $GRIFFIN_API_KEY" \
-H 'Content-Type: application/json' \
--data '
{
"display-name": "Acme Ltd Expenses",
"bank-product-type": "operational-account"
}'

Response

A successful response will look like this.

{
"account-url": "/v0/bank/accounts/ba.z7iJVZ5xx3wTA8g4Ce1gQw",
"display-name": "Acme Operational Account",
"primary-account": false,
"account-balance": {
"currency": "GBP",
"value": "0.00"
},
"available-balance": {
"currency": "GBP",
"value": "0.00"},
"account-transactions-url": "/v0/bank/accounts/ba.z7iJVZ5xx3wTA8g4Ce1gQw/transactions",
"account-payments-url": "/v0/bank/accounts/ba.z7iJVZ5xx3wTA8g4Ce1gQw/payments",
"bank-product-type": "operational-account",
"bank-addresses": [
{
"account-holder": "Acme Ltd.",
"bank-id": "000000",
"account-number": "17990030"}],
"account-status": "opening",
"close-account-url": "/v0/bank/accounts/ba.3XbMWgUWQMumdJBCMilreA/actions/close",
"beneficiary-url": "/v0/legal-persons/lp.1ray33QETOSq7hCAWe8Piw",
"owner-url": "/v0/legal-persons/lp.1ray33QETOSq7hCAWe8Piw",
"controller-url": "/v0/legal-persons/lp.1ray33QETOSq7hCAWe8Piw"
}

This response indicates that you have successfully registered your intent to open an operational account, where your organisation is the beneficiary, owner, and controller. The account-status will likely be opening since there are some background preparatory tasks that need to finish before 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.

Learn more about the account lifecycle.

Poll for status

Poll the account-url endpoint.

curl "https://api.griffin.com${ACCOUNT_URL}" \
-X 'GET' \
-H "Authorization: GriffinAPIKey $GRIFFIN_API_KEY" \
-H 'Content-Type: application/json' \

When the account-status is open, the account is ready for use.

{
"account-url": "/v0/bank/accounts/ba.z7iJVZ5xx3wTA8g4Ce1gQw",
"display-name": "Acme Operational Account",
"primary-account": false,
"account-balance": {
"currency": "GBP",
"value": "0.00"
},
"available-balance": {
"currency": "GBP",
"value": "0.00"},
"account-transactions-url": "/v0/bank/accounts/ba.z7iJVZ5xx3wTA8g4Ce1gQw/transactions",
"account-payments-url": "/v0/bank/accounts/ba.z7iJVZ5xx3wTA8g4Ce1gQw/payments",
"bank-product-type": "operational-account",
"bank-addresses": [
{
"account-holder": "Acme Ltd.",
"bank-id": "000000",
"account-number": "17990030"}],
"account-status": "open",
"close-account-url": "/v0/bank/accounts/ba.3XbMWgUWQMumdJBCMilreA/actions/close",
"beneficiary-url": "/v0/legal-persons/lp.1ray33QETOSq7hCAWe8Piw",
"owner-url": "/v0/legal-persons/lp.1ray33QETOSq7hCAWe8Piw",
"controller-url": "/v0/legal-persons/lp.1ray33QETOSq7hCAWe8Piw"
}
info

When you create an operational account in the sandbox, you’ll automatically start with £1,000 of test money to play around with!