> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.crisscross.money/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.crisscross.money/_mcp/server.

# Nigeria Payouts

Use this guide when you want to send NGN payouts to recipients in Nigeria. Nigeria supports **bank transfers** and **mobile wallets (OPay)**.

## Overview

* **Currency:** NGN
* **Payment location:** `NGA`
* **Supported rails:** Bank transfer, Mobile wallet
* **Payment methods:**
  * Bank transfer → `paymentMethodId: "banktransfer"`, `recipient.type: "bank_account"`
  * Mobile wallet → `paymentMethodId: "mobilemoney"`, `recipient.type: "mobile_money"`

## Required fields by rail

### Bank transfer

| Field               | Required | Notes                        |
| ------------------- | -------- | ---------------------------- |
| `accountNumber`     | Yes      | Nigerian bank account number |
| `bankCode`          | Yes      | Local bank code              |
| `accountHolderName` | Yes      | Name on the account          |
| `country`           | Yes      | `NGA`                        |
| `phoneNumber`       | No       | International format         |

### Mobile wallet (OPay)

| Field         | Required | Notes                          |
| ------------- | -------- | ------------------------------ |
| `phoneNumber` | Yes      | MSISDN in international format |
| `country`     | Yes      | `NGA`                          |
| `operator`    | Yes      | Use `opay`                     |
| `name`        | No       | Recipient name                 |

Top-level required fields for every payout: `merchantId`, `merchantReference`, `destinationValue` (with `minorAmount` and `currency`), `paymentMethodId`, `paymentLocation`, `recipient`, `sender` (see [Sender details](#sender-details-required)).

## Sender details (required)

Every payout requires a `sender` object for KYT/KYC screening. `fullName`, `identity`, and `identityNumber` are required; the remaining sender fields are optional but may be required by certain destinations.

| Field            | Required | Notes                                                                                                                           |
| ---------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `fullName`       | Yes      | Sender's full name                                                                                                              |
| `identity`       | Yes      | Identity document type: `passport`, `nationalId`, `driversLicense`, `residencePermit`, `businessRegistrationNumber`, or `other` |
| `identityNumber` | Yes      | Identity document number                                                                                                        |

See [Create Payout](/api-reference/payouts/payouts/create-payout) for the full sender schema.

## Example requests

### Bank transfer

```json
{
  "merchantId": "your-merchant-id",
  "merchantReference": "PAYOUT-NG-001",
  "destinationValue": {
    "minorAmount": 1000000,
    "currency": "NGN"
  },
  "paymentMethodId": "banktransfer",
  "paymentLocation": "NGA",
  "recipient": {
    "type": "bank_account",
    "accountNumber": "0123456789",
    "bankCode": "044",
    "accountHolderName": "John Doe",
    "country": "NGA"
  },
  "sender": {
    "fullName": "Jane Smith",
    "identity": "passport",
    "identityNumber": "A12345678"
  }
}
```

### Mobile wallet (OPay)

```json
{
  "merchantId": "your-merchant-id",
  "merchantReference": "PAYOUT-NG-002",
  "destinationValue": {
    "minorAmount": 500000,
    "currency": "NGN"
  },
  "paymentMethodId": "mobilemoney",
  "paymentLocation": "NGA",
  "recipient": {
    "type": "mobile_money",
    "phoneNumber": "2348012345678",
    "country": "NGA",
    "operator": "opay",
    "name": "Ada Obi"
  },
  "sender": {
    "fullName": "Jane Smith",
    "identity": "passport",
    "identityNumber": "A12345678"
  }
}
```

## Bank codes

For a complete list of supported Nigerian bank codes to use in the `recipient.bankCode` field, see the [Nigeria Bank Codes](/payout-nigeria-bank-codes) reference.

## Related guides

* [Nigeria Bank Codes](/payout-nigeria-bank-codes)
* [Bank Transfers](/payout-bank-transfers)
* [Mobile Wallet](/payout-mobile-wallet)
* [Supported Destinations](/payout-supported-destinations)