API reference · Accounts & ledger

Virtual Accounts

Dedicated account numbers per customer or per invoice, credited as transfers land. About virtual accounts Live

GET List the caller's virtual accounts

GET /account/virtual

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Example

Response: List<VirtualAccountResponse>

curl -X GET "https://api.bridgemoni.com/account/virtual" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Virtual accounts retrieved successfully

POST Create a virtual account at each of the named banks

POST /account/virtual

Every virtual account is linked to the caller's main account for the requested currency, which must already exist. Each bank is fulfilled independently - a bank that declines is reported under 'failures' and is not persisted, while the rest still succeed.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Example

Request body: VirtualAccountRequest · Response: VirtualAccountCreationResponse

curl -X POST "https://api.bridgemoni.com/account/virtual" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
    "financialInstitutionCodes": [
      "financial institution code"
    ],
    "currencyCode": "NGN",
    "category": "category"
  }'

Responses

StatusWhen
200Virtual account request processed

POST Retry a credit whose posting failed

POST /account/virtual/credit/{reference}/replay

Only FAILED credits are retried. An APPLIED credit has already moved money and is returned unchanged; a REJECTED one was declined for a reason retrying cannot change, and is also returned unchanged. Safe to call over a whole list of references without filtering first.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: VirtualAccountCreditResponse

curl -X POST "https://api.bridgemoni.com/account/virtual/credit/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/replay" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Replay attempted
404No credit under that reference

DELETE Delete a virtual account

DELETE /account/virtual/{reference}

Retires the account number at the issuing bank. Terminal - the record is retained for audit rather than removed, and a closed account cannot be restored.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: VirtualAccountResponse

curl -X DELETE "https://api.bridgemoni.com/account/virtual/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Virtual account deleted successfully

GET Fetch one of the caller's virtual accounts

GET /account/virtual/{reference}

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: VirtualAccountResponse

curl -X GET "https://api.bridgemoni.com/account/virtual/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Virtual account retrieved successfully

POST Block a virtual account

POST /account/virtual/{reference}/block

Asks the issuing bank to stop accepting inbound funds. The stored status only changes once the bank has accepted, so a rejection leaves the account as it was.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: VirtualAccountResponse

curl -X POST "https://api.bridgemoni.com/account/virtual/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/block" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Virtual account blocked successfully

GET List the funding notifications received for a virtual account

GET /account/virtual/{reference}/credits

Newest first, including rejected and failed entries - those are what is needed when money was reportedly sent and never arrived.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: List<VirtualAccountCreditResponse>

curl -X GET "https://api.bridgemoni.com/account/virtual/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/credits" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Credits retrieved successfully
401The virtual account belongs to someone else

POST Unblock a virtual account

POST /account/virtual/{reference}/unblock

Restores a blocked virtual account to accepting inbound funds.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Example

Response: VirtualAccountResponse

curl -X POST "https://api.bridgemoni.com/account/virtual/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/unblock" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Virtual account unblocked successfully

Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors