> For the complete documentation index, see [llms.txt](https://ivorypay.gitbook.io/ivorypay-on-off-ramp-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ivorypay.gitbook.io/ivorypay-on-off-ramp-documentation/overview/readme.md).

# Introduction

## What is IvoryPay?

IvoryPay is a crypto-fiat infrastructure platform that enables businesses across Africa to seamlessly convert between cryptocurrency and local fiat currencies. Our On/Off-Ramp API gives you programmatic access to:

* **On-Ramp** — Let your users acquire crypto with local fiat currencies (NGN, KES, GHS, ZAR, and more)
* **Off-Ramp** — Let your users convert crypto and receive fiat payouts to their bank accounts
* **Virtual Accounts** — Generate dedicated bank accounts for receiving fiat deposits
* **Deposits & Settlements** — Track incoming fiat deposits and their crypto settlement lifecycle
* **Webhooks** — Real-time event notifications for every transaction state change

## Who is this for?

This documentation is designed for **merchants and developers** integrating IvoryPay into their platforms — whether you're building a fintech app, an e-commerce checkout, a remittance corridor, or a crypto exchange.

## Quick start

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Authentication</strong></td><td>Get your API keys and make your first authenticated request</td><td><a href="/pages/5FeNdTDgBB0JD9uNErUX">/pages/5FeNdTDgBB0JD9uNErUX</a></td></tr><tr><td><strong>Environments</strong></td><td>Understand TEST vs LIVE mode and how to switch between them</td><td><a href="/pages/aWM2hy8yDs7eeoHQjH6i">/pages/aWM2hy8yDs7eeoHQjH6i</a></td></tr></tbody></table>

## Integration guides

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>On-Ramp (Fiat → Crypto)</strong></td><td>Step-by-step guide to let your users acquire crypto with local currency</td><td><a href="/pages/prJqbNJgb0zg7Foz1H0m">/pages/prJqbNJgb0zg7Foz1H0m</a></td></tr><tr><td><strong>Off-Ramp (Crypto → Fiat)</strong></td><td>Step-by-step guide to let your users convert crypto and receive bank payouts</td><td><a href="/pages/u6kL7ubFf5IEnDESlpJC">/pages/u6kL7ubFf5IEnDESlpJC</a></td></tr><tr><td><strong>Deposits &#x26; Settlements</strong></td><td>Virtual accounts, fiat deposits, and automatic crypto settlement</td><td><a href="/pages/JFxOnZzYfZLWEr02OgoJ">/pages/JFxOnZzYfZLWEr02OgoJ</a></td></tr></tbody></table>

## Essential resources

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Webhooks</strong></td><td>Set up real-time notifications, verify signatures, and handle events</td><td><a href="/pages/ZswCo0ZYjcQC22ewE5GG">/pages/ZswCo0ZYjcQC22ewE5GG</a></td></tr><tr><td><strong>Error Codes</strong></td><td>Complete error code reference for programmatic error handling</td><td><a href="/pages/zsFo8yEE9708Ym6HAuNy">/pages/zsFo8yEE9708Ym6HAuNy</a></td></tr><tr><td><strong>Supported Currencies</strong></td><td>All supported fiat currencies, crypto tokens, and blockchain networks</td><td><a href="/pages/n2BlOQQ130Z1XNVXwMuX">/pages/n2BlOQQ130Z1XNVXwMuX</a></td></tr><tr><td><strong>Webhook Security</strong></td><td>HMAC-SHA512 signature verification with code samples in 4 languages</td><td><a href="/pages/2Jd9tvOH7Lz5n34bH9dX">/pages/2Jd9tvOH7Lz5n34bH9dX</a></td></tr></tbody></table>

## Base URLs

IvoryPay exposes the same API on three environment hostnames. All paths are prefixed with `/api/v1`.

| Environment | Base URL                                       |
| ----------- | ---------------------------------------------- |
| Production  | `https://ramp-api.ivorypay.io/api/v1`          |
| UAT         | `https://uat-onofframp-api.ivorypay.io/api/v1` |
| Development | `https://dev-onofframp-api.ivorypay.io/api/v1` |

All API requests are made over HTTPS. Requests over plain HTTP will be rejected.

## AI-friendly documentation

This documentation is structured for both human developers and AI coding assistants. Every endpoint includes complete request/response schemas, field-level descriptions, and multi-language code examples (cURL, Node.js, Python, Go) — making it easy for tools like ChatGPT, Claude, GitHub Copilot, or Cursor to generate working integration code from these docs.

> **Tip for AI assistants:** Each API reference page follows a consistent structure: endpoint, authentication, request parameters, request body, response, tabbed code examples, example response, and error cases. Use the [Resources](/ivorypay-on-off-ramp-documentation/resources/supported-currencies.md) section for valid enum values.
