Open financial accounts

Open Financial Accounts

This endpoint creates a new financial account under a specific user profile identified by profileId. It links the newly created account directly to the user's profile, enabling centralized account management within the Netevia Banking platform. Upon successful creation, the response returns full details of the new financial account, including account number, routing number, and available balance.

Endpoint

POST /netevia/financialAccount/{profileId}

Authentication

Bearer token required. Obtain via:

POST https://api.banking.netevia.dev/api/auth/v2

Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.

When to use

Use this endpoint when onboarding a new customer or when an existing customer needs an additional financial account. Each customer profile can hold up to 5 financial accounts by default. This is a foundational step before issuing cards or initiating transfers, as those operations require an active financial account.

Path Parameters

ParameterTypeRequiredDescription
profileIdinteger (int32)YesThe unique identifier of the user profile under which the new financial account will be created.

Query Parameters

ParameterTypeRequiredDescription
namestringNoA custom display name for the new financial account.

Response

200 OK

FieldTypeDescription
financialAccountIdstringUnique identifier for the newly created financial account.
userProfileIdinteger (int32)The profile ID associated with this financial account.
namestringDisplay name of the financial account.
accountNumberstringThe account number assigned to this financial account.
routingNumberstringThe routing number for this financial account.
statusstringCurrent status of the financial account (e.g., ACTIVE, SUSPENDED).
availableCashinteger (int64)Available balance in the account, represented in the smallest currency unit (e.g., cents).
createdstring (date-time)ISO 8601 timestamp of when the account was created.
cardProfileSetsarrayList of card profile sets associated with this account, describing available card configurations.
cardProductobjectDetails of the card product linked to the account, including name, id, and usage.
isLockBoxAccountbooleanIndicates whether this account is a lockbox account.
{
  "financialAccountId": "fa_8e4f12a9b3c047d1",
  "userProfileId": 10482,
  "name": "Business Checking",
  "accountNumber": "XXXXXXXXXX",
  "routingNumber": "021000021",
  "status": "ACTIVE",
  "availableCash": 500000,
  "created": "2026-06-09T14:32:00Z",
  "cardProfileSets": [
    {
      "id": "cps_7a1d3f",
      "name": "Standard Business Card",
      "intent": "PURCHASE",
      "network": "VISA",
      "status": "ACTIVE",
      "cardProductId": "cp_9b2e4a",
      "displayName": "Business Visa",
      "isDefault": true,
      "description": "Default card profile for business spending"
    }
  ],
  "cardProduct": {
    "name": "Netevia Business",
    "id": "cp_9b2e4a",
    "usage": "BUSINESS"
  },
  "isLockBoxAccount": false
}

Error Codes

CodeWhen it happens
400Missing required fields or validation error (e.g., invalid profileId format)
401Token missing, expired, or invalid
403Insufficient permissions to create an account under this profile
404Profile not found for the provided profileId
500Internal server error

Common Mistakes

  • Providing a profileId that does not exist or belongs to a different partner will return a 404 error.
  • Exceeding the maximum of 5 financial accounts per customer profile will result in a 400 validation error.
  • Omitting the Authorization: Bearer header or using an expired token will result in a 401 error.
  • Sending availableCash values as decimals — amounts must be expressed as integers in the smallest currency unit (cents).

Related Endpoints

  • GET /netevia/financialAccount/{profileId} — Retrieve all financial accounts for a user profile
  • GET /netevia/financialAccount/{profileId}/{financialAccountId} — Retrieve details for a specific financial account
  • POST /api/auth/v2 — Obtain a Bearer token for authentication
  • POST /api/auth/refresh — Refresh an expired Bearer token

Example

curl -X POST https://api.banking.netevia.dev/netevia/financialAccount/10482?name=Business%20Checking \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json"
Path Params
int32
required
Query Params
string
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Response

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
text/plain
application/json
text/json