Payment accounts
Use this API to add, update and get payment accounts for an existing customer.
Create an account for a customer
Type of payment account to create
EXTERNAL_BANK_ACCOUNT
Customer to create payment account
072a8b7b-38c7-429a-a6cf-35dae7f2fb77
Nickname for customer to use for the payment account
Savings Account
Organization to create payment account
24ab9fdd-5042-4d96-a616-4bef2877dd01
Whether the payment account is a third-party account. Defaults to false.
false
Example: false
POST /payment-accounts HTTP/1.1
Host: api.fernhq.com
Authorization: Bearer API Key
Content-Type: application/json
Accept: */*
Content-Length: 1555
{
"paymentAccountType": "EXTERNAL_BANK_ACCOUNT",
"customerId": "072a8b7b-38c7-429a-a6cf-35dae7f2fb77",
"nickname": "Savings Account",
"organizationId": "24ab9fdd-5042-4d96-a616-4bef2877dd01",
"externalBankAccount": {
"accountNumber": "00123456789",
"bankName": "Chase Bank",
"bankAccountCurrency": "USD",
"bankAddress": {
"country": "US",
"addressLine1": "350 5th Avenue",
"addressLine2": "Floor 21",
"city": "New York",
"state": "New York",
"stateCode": "NY",
"postalCode": "10016",
"locale": "en-US"
},
"bankAccountType": "CHECKING",
"bankAccountPaymentMethod": "ACH",
"bankAccountOwner": {
"email": "[email protected]",
"firstName": "John",
"lastName": "Doe",
"businessName": "Fern LLC",
"address": {
"country": "US",
"addressLine1": "350 5th Avenue",
"addressLine2": "Floor 21",
"city": "New York",
"state": "New York",
"stateCode": "NY",
"postalCode": "10016",
"locale": "en-US"
},
"type": "INDIVIDUAL"
},
"routingNumber": "11110000",
"sortCode": "123456",
"iban": "GB29NWBK60161331926819",
"bicSwift": "SMCOGB2LXXX",
"transitNumber": "12345",
"institutionNumber": "111",
"bsbNumber": "123-456",
"ifscCode": "IFSC0001234",
"clabeNumber": "123456789012345678",
"bankCode": "123456",
"cnapsCode": "123456789",
"nubanNumber": "123456789012",
"pixCode": "123456789",
"clearingCode": "123456",
"taxNumber": "123456789"
},
"fernAutoFiatAccount": {
"bankAccountCurrency": "USD",
"destinationPaymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"destinationCurrency": "USDC"
},
"externalCryptoWallet": {
"cryptoWalletType": "EVM",
"chain": "base",
"address": "0x1234567890123456789012345678901234567890"
},
"fernCryptoWallet": {
"cryptoWalletType": "EVM"
},
"isThirdParty": false
}
{
"paymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"paymentAccountType": "EXTERNAL_BANK_ACCOUNT",
"nickname": "Savings Account",
"createdAt": "2025-07-13T15:46:05.970Z",
"customerId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"externalBankAccount": {
"bankAccountType": "CHECKING",
"bankAccountOwnerName": "John Doe",
"bankAccountOwnerEmail": "[email protected]",
"bankName": "Chase Bank",
"bankAccountCurrency": {
"label": "text"
},
"bankAccountMask": "***6789",
"bankAccountPaymentMethod": "ACH"
},
"fernAutoFiatAccount": {
"bankAccountOwnerName": "John Doe",
"bankName": "Chase Bank",
"bankAccountCurrency": {
"label": "text"
},
"bankAccountPaymentMethods": [
"ACH",
"WIRE"
],
"bankAccountNumber": "12346789",
"routingNumber": "12346789",
"iban": "GB29NWBK60161331926819",
"bicSwift": "SMCOGB2LXXX",
"destinationPaymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"destinationCurrency": {
"label": "USDC",
"chain": "ETHEREUM",
"contractAddress": "0x123456789abcd123456789abcd123456789abcd",
"currencyDecimals": 18
}
},
"externalCryptoWallet": {
"cryptoWalletType": "EVM",
"chain": "base",
"address": "0x1234567890123456789012345678901234567890"
},
"fernCryptoWallet": {
"cryptoWalletType": "EVM",
"address": "0x1234567890123456789012345678901234567890"
},
"isThirdParty": false,
"bankAccountFormLink": "https://app.fernhq.com/bank_account/abc"
}
Get details about a specific payment account
Unique identifier of the payment account
072a8b7b-38c7-429a-a6cf-35dae7f2fb77
GET /payment-accounts/{paymentAccountId} HTTP/1.1
Host: api.fernhq.com
Authorization: Bearer API Key
Accept: */*
{
"paymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"paymentAccountType": "EXTERNAL_BANK_ACCOUNT",
"nickname": "Savings Account",
"createdAt": "2025-07-13T15:46:05.970Z",
"customerId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"externalBankAccount": {
"bankAccountType": "CHECKING",
"bankAccountOwnerName": "John Doe",
"bankAccountOwnerEmail": "[email protected]",
"bankName": "Chase Bank",
"bankAccountCurrency": {
"label": "text"
},
"bankAccountMask": "***6789",
"bankAccountPaymentMethod": "ACH"
},
"fernAutoFiatAccount": {
"bankAccountOwnerName": "John Doe",
"bankName": "Chase Bank",
"bankAccountCurrency": {
"label": "text"
},
"bankAccountPaymentMethods": [
"ACH",
"WIRE"
],
"bankAccountNumber": "12346789",
"routingNumber": "12346789",
"iban": "GB29NWBK60161331926819",
"bicSwift": "SMCOGB2LXXX",
"destinationPaymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"destinationCurrency": {
"label": "USDC",
"chain": "ETHEREUM",
"contractAddress": "0x123456789abcd123456789abcd123456789abcd",
"currencyDecimals": 18
}
},
"externalCryptoWallet": {
"cryptoWalletType": "EVM",
"chain": "base",
"address": "0x1234567890123456789012345678901234567890"
},
"fernCryptoWallet": {
"cryptoWalletType": "EVM",
"address": "0x1234567890123456789012345678901234567890"
},
"isThirdParty": false
}
List all payment accounts
Token for forward pagination
ZDE4YmViMjYtYjRkMS00N2VlLThlNWQtMGQzOTA1ZjIwMGM3
Number of items per page (default: 10, max: 100)
10
Example: 10
Customer to list payment accounts for
072a8b7b-38c7-429a-a6cf-35dae7f2fb77
GET /payment-accounts HTTP/1.1
Host: api.fernhq.com
Authorization: Bearer API Key
Accept: */*
{
"paymentAccounts": [
{
"paymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"paymentAccountType": "EXTERNAL_BANK_ACCOUNT",
"nickname": "Savings Account",
"createdAt": "2025-07-13T15:46:05.970Z",
"customerId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"externalBankAccount": {
"bankAccountType": "CHECKING",
"bankAccountOwnerName": "John Doe",
"bankAccountOwnerEmail": "[email protected]",
"bankName": "Chase Bank",
"bankAccountCurrency": {
"label": "text"
},
"bankAccountMask": "***6789",
"bankAccountPaymentMethod": "ACH"
},
"fernAutoFiatAccount": {
"bankAccountOwnerName": "John Doe",
"bankName": "Chase Bank",
"bankAccountCurrency": {
"label": "text"
},
"bankAccountPaymentMethods": [
"ACH",
"WIRE"
],
"bankAccountNumber": "12346789",
"routingNumber": "12346789",
"iban": "GB29NWBK60161331926819",
"bicSwift": "SMCOGB2LXXX",
"destinationPaymentAccountId": "03b7030f-6da1-4d76-9352-cdebd82112c8",
"destinationCurrency": {
"label": "USDC",
"chain": "ETHEREUM",
"contractAddress": "0x123456789abcd123456789abcd123456789abcd",
"currencyDecimals": 18
}
},
"externalCryptoWallet": {
"cryptoWalletType": "EVM",
"chain": "base",
"address": "0x1234567890123456789012345678901234567890"
},
"fernCryptoWallet": {
"cryptoWalletType": "EVM",
"address": "0x1234567890123456789012345678901234567890"
},
"isThirdParty": false
}
],
"nextPageToken": "xyz"
}
Get the balance of a payment account
Unique identifier of the payment account
072a8b7b-38c7-429a-a6cf-35dae7f2fb77
The chain the wallet is on. case-sensitive
BASE
The currency to get the balance for
{"value":"USD"}
GET /payment-accounts/{paymentAccountId}/balance HTTP/1.1
Host: api.fernhq.com
Authorization: Bearer API Key
Accept: */*
{
"paymentAccountId": "072a8b7b-38c7-429a-a6cf-35dae7f2fb77",
"currency": {
"label": "USDC",
"chain": "base",
"contractAddress": "0x1234567890abcdef1234567890abcdef12345678",
"currencyDecimals": "18"
},
"balance": "1000.00",
"usdValue": "1000.00"
}
Delete all details about a specific payment account
Unique identifier of the payment account
072a8b7b-38c7-429a-a6cf-35dae7f2fb77
DELETE /payment-accounts/{paymentAccountId} HTTP/1.1
Host: api.fernhq.com
Authorization: Bearer API Key
Accept: */*
No content
Last updated