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

# Quick Start

> Get started with GetMiPay API in 5 minutes - Complete onboarding guide for merchants

# Quick Start

Get started with GetMiPay API in 5 minutes and start accepting mobile money payments.

## Prerequisites

Before you begin, make sure you have:

* A valid business registration document
* Government-issued ID for KYC verification
* Active mobile money account
* Business bank account (optional)

## Complete Onboarding Process

### Step 1: Create Merchant Account

#### Used GetMiPay Merchant App

* **Web Dashboard**: [getmipay.com/merchant](https://getmipay.com)

#### Sign Up Process

1. Open GetMiPay Merchant App or visit web dashboard
2. Click **"Create Merchant Account"**
3. Enter business email and secure password
4. Verify email through OTP sent to your inbox
5. Complete basic business profile

#### Business Information Required

* Business name and legal structure
* Business address and contact information
* Tax identification number
* Business category and industry

### Step 2: Complete KYC Verification

#### Required Documents

<Columns count={2}>
  <Column>
    ##### Individual/Sole Proprietor

    * Government-issued ID (Passport, National ID, Driver's License)
    * Proof of address (Utility bill, Bank statement)
    * Recent passport photograph
  </Column>

  <Column>
    ##### Company/Business

    * Certificate of incorporation
    * Company tax identification
    * Director's identification documents
    * Board resolution authorizing account creation
  </Column>
</Columns>

#### KYC Submission Process

```bash theme={null}
# 1. Log in to your merchant dashboard
# 2. Navigate to "Verification" section
# 3. Upload required documents
# 4. Submit for review
# 5. Wait for approval (24-48 hours)
```

### Step 3: Authenticate With API Keys

Use your public and private API keys once to create a JWT bearer token.

```bash theme={null}
curl -X POST "https://getmipay.com/api/v1/action/auth" \
  -H "Content-Type: application/json" \
  -d '{
    "public_apikey": "gmp_pk_...",
    "private_secretkey": "gmp_sk_..."
  }'
```

The response contains a Tymon JWT that expires after 24 hours.

```json theme={null}
{
  "success": true,
  "message": "Authentication successful",
  "data": {
    "token": "JWT_TOKEN_HERE",
    "token_type": "bearer",
    "token_format": "JWT",
    "expires_at": "2026-05-21T23:59:59Z"
  }
}
```

### Step 4: Call Protected APIs

For protected API requests, send only the JWT bearer token in the `Authorization` header.

```bash theme={null}
curl "https://getmipay.com/api/v1/convert-currency?amount=10000&from=XAF&to=XOF" \
  -H "Authorization: Bearer JWT_TOKEN_HERE"
```

PayIn requests also require `service` and `operation` headers. Add `otp` only for services that require OTP.

```bash theme={null}
curl -X POST "https://getmipay.com/api/v1/payments/payin" \
  -H "Authorization: Bearer JWT_TOKEN_HERE" \
  -H "Content-Type: application/json" \
  -H "service: 1" \
  -H "operation: 2" \
  -d '{
    "amount": 1000,
    "phone": "237600000000",
    "order_id": "ORDER-1001"
  }'
```

PayOut requests use `operation: 4`.
