Bank Accounts for Individuals or Businesses
Graph supports bank accounts held by individuals and businesses:
| Account type | Holder | Currency |
|---|---|---|
| Personal Checking | Individual | USD |
| Business Checking | Business | USD |
| Personal Virtual | Individual | NGN |
| Business Virtual | Business | NGN |
Requesting and tracking an account
Create Bank Account starts an issuance request using the appropriate person_id or business_id. A 201 response does not mean issuance has completed. Save the account ID and track its status with Fetch Bank Account, List Bank Accounts, and Issuance Events.
For new personal USD requests on the new issuance flow, the account remains pending while verification and issuance proceed. Your organisation must be enabled for this live flow. Existing accounts, historical pending requests, business accounts, and other currency routes are not automatically moved into it.
Requests for information
During processing, Graph may request supporting information or a hosted verification action. Use List Inquiry Requests with account_id to find the relevant RFIs. Some are shared person-level requests and have a null account_id in their response.
For a standard RFI, submit the requested text or documents once. For a link RFI, direct the user to the hosted action; refresh an expired action through the inquiry refresh endpoint. Completing an RFI does not itself activate the account, and further RFIs may follow. See Requests for Information and Inquiry Events.
Final outcome
account.createdsignals successful issuance and activation. Fetch the account and use its returned bank details and routing information.account.issuance.failedsignals a final unsuccessful issuance outcome.- A pending account or temporary delay is not a final rejection. Continue tracking the existing request instead of creating another account.
Only show funding instructions after the account is active.

