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

# Introduction

> Build customer, payment, virtual-account, and wallet workflows with the Inflow API.

# Overview

Welcome to the **Inflow API**. Use it to create customers, collect cross-currency payments through hosted checkout, provision virtual accounts, and manage organization wallets.

Start with [Quickstart](/guides/quickstart), then follow the workflow guides before diving into the endpoint reference.

## What is Inflow?

Inflow provides APIs for financial operations across your customer lifecycle. You can:

* **Manage Customers**: Onboard, track, and manage your users easily.
* **Process Payments & Cross-Currency Settlement**: Generate payment requests, allow your customers to pay in their local currency, and settle the funds in your preferred currency.
* **Manage Wallets**: Track balances, manage multi-currency wallets, and initiate withdrawals (e.g., NGN to local bank accounts).

## API basics

### Authentication

All API requests require an organization API key from the Inflow Dashboard. Send it as a Bearer token; keys begin with `gtw_sk_`.

Include your API key in the `Authorization` header of your HTTP requests:

```bash theme={null}
Authorization: Bearer gtw_sk_your_api_key
```

### Base URL

Use the environment that matches your key:

| Environment | Base URL                               |
| ----------- | -------------------------------------- |
| Sandbox     | `https://sandbox.inflowafrica.com/api` |
| Production  | `https://app.inflowpay.net/api`        |

<Warning>
  Keep API keys on your server. Never ship a secret key in browser, mobile, or other client-side code.
</Warning>

***

# Integration paths

Choose the guide that matches what you are building:

* [Quickstart](/guides/quickstart) — authenticate a request and create your first customer.
* [Collect a payment](/guides/collect-a-payment) — quote, create, redirect, and verify a payment.
* [Virtual accounts](/guides/virtual-accounts) — give a customer dedicated transfer details.
* [Payout funds](/guides/wallets-and-withdrawals) — check balances and withdraw NGN.
* [Errors and testing](/guides/errors-and-testing) — handle failures and test safely in sandbox.

## Typical payment flow

1. Create a customer and store the customer ID.
2. Optionally quote the exchange rate to show the payer the collection amount.
3. Create a payment using a unique reference and the customer ID.
4. Redirect the payer to the returned payment link.
5. Retrieve the payment from your server and fulfil only after the required final status.

## Next Steps

Explore the API reference in the sidebar for required fields, permissions, and full response schemas. Use sandbox until your end-to-end flow has been tested.
