Skip to main content

Get all funding methods (New)

Overview

Retrieve or auto-generate bank account details (funding methods) for a wallet to receive inbound local or international transfers.

  • Segregated Accounts: Dedicated virtual account numbers (vIBANs) issued in the company's name. Local transfers arrive via CHAPS, BACS, Faster Payments, or SEPA in minutes. International transfers arrive via SWIFT in 1-5 working days.
  • Pooled Accounts: Shared accounts with unique smartWalletRef routing tags for automatic reconciliation.
  • Auto-Creation: Pass autoCreate=true as a query parameter to dynamically generate virtual account numbers if none currently exist for the wallet.

Resource Access

  • HTTP Method: GET
  • Endpoint: /banking/ibans/v2/{companyId}/wallets/{walletId}/fundingMethods
  • Authentication: Bearer token required

Request Headers

HeaderValueRequiredDescription
AuthorizationBearer {access_token}YesJWT Bearer access token
Acceptapplication/jsonYesResponse payload format
x-api-keystringNoOptional API key

Path Parameters

ParameterTypeRequiredDescription
companyIdnumberYesSpecifies the unique company identifier (e.g. 1234).
walletIdnumberYesSpecifies the unique wallet identifier (e.g. 2233).

Query Parameters

ParameterTypeRequiredDescription
autoCreatebooleanNoWhen set to true, generates account details if the wallet does not yet possess one. If omitted, returns only existing accounts.
partnerProductstringNoSpecify the bank partner when requesting specific local clearing rails (e.g. FCMB-NGN-1, PAGA-NGN-2).

Response

Success Response (200 OK - Segregated Account Example)

{
"totalCount": 2,
"items": [
{
"id": "3535",
"accountType": "LOCAL",
"fundsType": "SEGERATED",
"accountName": "Acme Global Solutions Ltd",
"accountNumber": "96566308",
"bankCode": "608382",
"bankName": "BankingCircle",
"bankAddress": "AMERIKA PLADS 38, KOEBENHAVN, 2900, Denmark",
"smartWalletRef": null,
"virtualAccountId": "3535",
"notes": [
"Receive into this local account via CHAPS, BACS & Faster Payments.",
"Incoming payments are typically received in minutes but can take up a few hours during peak times."
]
},
{
"id": "3534",
"accountType": "GLOBAL",
"fundsType": "SEGERATED",
"accountName": "Acme Global Solutions Ltd",
"accountNumber": "GB93SAPY60838296566308",
"bankCode": "SAPYGB2L",
"bankName": "BankingCircle",
"bankAddress": "AMERIKA PLADS 38, KOEBENHAVN, 2900, Denmark",
"smartWalletRef": null,
"virtualAccountId": "3534",
"notes": [
"Receive into this International account via International Transfers (SWIFT).",
"Incoming payments are typically received in 1-5 working days."
]
}
],
"metadata": {
"isEligibleForSegregatedLocalAccount": true,
"isEligibleForSegregatedGlobalAccount": true
}
}

Response Fields (FundingMethod)

FieldTypeDescription
idstringUnique identifier for the funding account.
accountTypestringScope of the account: LOCAL (domestic clearing rails) or GLOBAL (cross-border SWIFT).
fundsTypestringMethod of funds management: SEGERATED (dedicated vIBAN) or POOLED (shared rail with smart wallet tag).
accountNamestringName assigned to the account (typically company legal entity name).
accountNumberstringAccount number or full international IBAN.
bankCodestringBank code (Sort Code, SWIFT BIC, Routing number, ABA).
bankNamestringName of the issuing bank.
bankAddressstringRegistered address of the bank.
smartWalletRefstringFor pooled accounts, the unique reference to include in transfer memos (null for segregated).
virtualAccountIdstringUnique ID of the virtual account.
notesarray of stringsInstructions, clearing rails, and delivery timeframe notes.
metadata.isEligibleForSegregatedLocalAccountbooleanEligibility flag for dedicated local clearing.
metadata.isEligibleForSegregatedGlobalAccountbooleanEligibility flag for dedicated SWIFT IBAN.

Error Responses

  • 400 Bad Request: Invalid parameters or unsupported partner product.
  • 401 Unauthorized: Missing or expired Bearer token.
  • 403 Forbidden: Insufficient permissions to view or create funding methods.
  • 404 Not Found: Wallet or company not found.
  • 500 Internal Server Error: Downstream banking partner integration error.

Code Examples

Base URL

Production: https://api.ahrvo.network
Staging: https://gateway.ahrvo.network

cURL

curl -X GET \
'https://gateway.ahrvo.network/banking/ibans/v2/1234/wallets/2233/fundingMethods?autoCreate=true' \
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
-H 'Accept: application/json'

Python

import requests

company_id = 1234
wallet_id = 2233
url = f"https://gateway.ahrvo.network/banking/ibans/v2/{company_id}/wallets/{wallet_id}/fundingMethods"
params = {"autoCreate": True}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Accept": "application/json"
}

response = requests.get(url, params=params, headers=headers)
print(response.status_code, response.json())

JavaScript (Node.js)

const axios = require('axios');

const companyId = 1234;
const walletId = 2233;
const url = `https://gateway.ahrvo.network/${companyId}/wallets/${walletId}/fundingMethods`;
const headers = {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Accept': 'application/json'
};
const params = { autoCreate: true };

axios.get(url, { headers, params })
.then(res => console.log(res.data))
.catch(err => console.error(err.response ? err.response.data : err.message));

Interactive API Explorer