> ## Documentation Index
> Fetch the complete documentation index at: https://dev-docs.pagoramp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Eligibility For Virtual Account

> Which customers can be issued a virtual account, whether other people can pay into it, and whose name the bank details carry.

# Who can get an account

*Last updated: 3 November 2026.*

> [!NOTE]
>
> These rules can change. They depend on our bank partners and on the regulations that apply to them, and we update this page when we learn of a change. A rule here is not a promise to your customers. To check what applies to a specific customer today, call `GET /virtual-accounts/availability`, or contact us.

Three questions come up most when you plan a virtual account product. This page answers them by currency.

* **Who can be issued an account?** It depends on where the customer lives and on the identity checks of our bank partner. It does not depend on the customer's nationality, with one exception: NGN accounts need a Nigerian BVN or NIN.
* **Can someone other than the customer pay into it?** Yes in most cases, within limits. Some currencies hold third-party payments for review.
* **Does the account carry the customer's name?** Often, but not always. For some currencies the name is chosen by our bank partner and you only see it after the account is created. Show `bankDetails.accountName` exactly as we return it.

## At a glance

| Currency | Who can be issued an account | Payments from someone else | Name on the account |
| - | - | - | - |
| NGN | Any customer with a Nigerian BVN or NIN, individual or business | Accepted by default | Your business name and the customer's name, for example `ACME PAY / ADA OKAFOR` |
| USD | Customers living in a supported country, after identity verification | Accepted within limits (see below) | The customer's name |
| EUR | Customers living in a supported country, after identity verification and an extra review | From businesses without a limit. From individuals only on request. | Chosen by our bank partner. Can be the customer's name or the partner's company name. |
| GBP | Businesses only, living in a supported country. Customers based in the EU are not supported. | From businesses only | Chosen by our bank partner. Can be the partner's company name. |
| MXN | Customers living in a supported country. Available on request. Customers based in the EU are not supported. | From businesses without a limit. From individuals up to MXN 15,000. | Chosen by our bank partner |
| BRL | Individuals living in Brazil with a CPF. Available on request. | From businesses only | Chosen by our bank partner |
| COP | Customers living in a supported country. Available on request. Customers based in the EU are not supported. | From businesses only | Chosen by our bank partner |
| KES | Individuals and businesses. Only the name and email are needed. | Accepted by default | Your business name and the customer's name |
| GHS | Individuals and businesses. Only the name and email are needed. Some accounts need an extra review. | Accepted by default | The customer's name |
| TZS | Individuals and businesses. Only the name is needed. | Accepted by default | The customer's name |
| CAD | Individuals and businesses who provide identity documents. Available on request. | Accepted by default | Chosen by our bank partner |

**"Chosen by our bank partner"** means we do not set the name and cannot tell you in advance what it will be. The bank that issues the account decides it, and it may be your customer's name or the bank's own company name. You find out when the account is created, in `bankDetails.accountName`. Show that name to your payer exactly as returned, so the name they see at their bank matches. If your customer asks why a company name appears, that is expected for these currencies: the account is still linked to them, and payments to it are matched to their record.

## Nationality and where the customer lives

We do not block customers by nationality. Eligibility is set by where the customer lives and by the identity checks of the partner that issues the account.

**USD, EUR, GBP, MXN, BRL and COP.** Our bank partner onboards customers by country of residence, not citizenship, and checks identity on a secure page. Some countries cannot be onboarded:

* Prohibited, for example: Cuba, Iran, North Korea, Russia, Syria, Venezuela, Belarus, Myanmar and the Crimea, Donetsk, Luhansk, Kherson and Zaporizhzhia regions.
* Not available: Algeria, Burundi, China, Japan and Tunisia.
* United States: customers with a home or business address in New York cannot be onboarded. In Texas, only payments from the customer themselves are supported.
* Some countries are available on only some currencies. Check availability for the customer before you create the account.

Higher-risk countries can take longer, because they need extra due diligence.

**NGN.** A BVN or NIN is required and is checked when the account is issued. A customer of any nationality can be issued an account if they hold one. See [Identification requirements](https://dev-docs.pagoramp.com/identification-requirements-by-country.md).

**BRL.** Individuals must live in Brazil and have a CPF.

**KES, GHS and TZS.** No nationality or residency rule applies beyond the fields you send. GHS accounts can be held for an extra review.

**CAD.** An individual needs a nationality, date of birth, occupation, address, an identity document and a utility bill.

Check a customer before you create the account:

```bash theme={null}
curl "https://pay-api.pagoramp.com/api/v1/virtual-accounts/availability?currency=USD" \
  -H "x-api-key: YOUR_API_KEY"
```

If a customer cannot be issued an account, the create call returns `422` with the reason, or you receive `virtual_account.failed` with a `reason`. See [Webhooks](https://dev-docs.pagoramp.com/virtual-account-webhooks.md).

## Payments from someone else (third-party deposits)

A payment is credited straight away when the sender's name matches the customer's name. We compare the words in both names, in any order, and ignore case and accents. When it does not match, the result depends on the currency and on your account's risk level.

| Currency | Default for a payment from someone else |
| - | - |
| USD, EUR, GBP | Credited for low and medium risk accounts. Held for review for high risk accounts. |
| NGN, KES, GHS, TZS, MXN, BRL, COP, CAD | Credited. |

A held payment is not lost. It appears as a transaction in review, and you receive `virtual_account.payment.manual_review` with the reason `third_party_deposit`. After the review you receive `virtual_account.payment.received` if it is approved or `virtual_account.payment.rejected` if it is declined. Contact us to change the default for your account.

Our bank partners also set their own limits on who can pay in. These apply on top of the table above:

| Currency | Who can pay in besides the customer |
| - | - |
| USD | Businesses, family members who share the customer's surname, and individuals for amounts under USD 4,000. Not supported for customers in Texas. |
| EUR | Businesses without a limit. Individuals only on request. |
| GBP | Businesses without a limit. Individuals are not supported. |
| MXN | Businesses without a limit. Individuals up to MXN 15,000. |
| BRL | Businesses. Individuals are not supported. |
| COP | Businesses without a limit. Individuals are not supported. |

A payment the partner does not accept is returned to the sender and never credited. Partner rules change, so check with us before you promise a rule to your own customers.

## Whose name is on the account

The account is issued for your customer and linked to their record. The name that appears on the bank details is set by the partner that issues it:

* **Your business name and the customer's name.** For NGN and KES, for example `ACME PAY / ADA OKAFOR`. Tell your payer to expect this name, because some banks show it before the transfer is confirmed.
* **The customer's name.** For USD, GHS and TZS.
* **Chosen by our bank partner.** For EUR, GBP, MXN, BRL, COP and CAD the bank that issues the account decides the name, and we only learn it when the account is created. For EUR and GBP it can be the partner's own company name instead of the customer's.

Show `bankDetails.accountName` to your payer exactly as returned. Do not rebuild it from the customer record.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.