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

# Send a mobile money code

> Send the one-time code from the payer's phone for a mobile money onramp.

Requires the **Ramps, banks & methods** scope (payments write). Only needed when a mobile money onramp's `deposit.details.next_step` is `OTP`. See [Mobile money](https://docs.bridge.linkio.world/flows/mobile-money.md).

## Headers

**API-Version** `string` *required* (default: 2026-10-29-atlas)

Your account's API version.

## Path

**paymentId** `string` *required*

The payment ID, starting with `pay_`.

## Body

**otp** `string` *required*

The 4 to 8 digit code the payer received.

## Response

`202 Accepted`. The payer may then need to approve on their phone. Watch for webhooks to see the result.

**status** `string`

`success`

**message** `string`

`Code submitted; approve on the phone if asked`

## Errors

| Status | Code | Message |
| - | - | - |
| `422` | `validation_failed` | `otp must be the 4 to 8 digit code from the phone` |
| `422` | `validation_failed` | `This payment is not waiting for a code` |
| `422` | `validation_failed` | `This payment does not take a code` |
| `404` | `payment_not_found` | `Payment pay_… not found` |

```bash cURL theme={null}
curl -X POST https://sandbox.core.linkio.world/api/payments/pay_8fK2mQ9xLp3VnR7tY1wZ4cB6dE/otp \
  -H "X-BRIDGE-API-Key: $BRIDGE_API_KEY" \
  -H "API-Version: 2026-10-29-atlas" \
  -H "Content-Type: application/json" \
  -d '{ "otp": "123456" }'
```

```json 202 theme={null}
{
  "status": "success",
  "message": "Code submitted; approve on the phone if asked"
}
```

```json 422 theme={null}
{
  "error": {
    "type": "validation_error",
    "code": "validation_failed",
    "message": "This payment is not waiting for a code",
    "request_id": "req_3VnR7tY1wZ4cB6dE8fK2mQ9xLp",
    "status": 422,
    "errors": [
      { "field": "paymentId", "message": "This payment is not waiting for a code" }
    ]
  }
}
```


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