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

# Quickstart

> Take your first test payment with SeerBit in about ten minutes

This guide takes you from a new account to a verified test payment using [Standard Checkout](/online-payments/integrations/standard-checkout) — you create the transaction from your server, send the customer to a SeerBit-hosted page, then confirm the result server-side. No card data touches your servers.

## Prerequisites

* A SeerBit account — [register for free](https://dashboard.seerbit.com/#/auth/register). New accounts start in **Test Mode**, so you don't need approved KYC to complete this guide.
* Your **public key** and **secret key**, from **Settings > API Keys** in the dashboard.
* Any tool that can make HTTP requests.

> **Note**: No real money moves in Test Mode. Keep your secret key on your server — never in browser or mobile code.

## Get started

<Steps>
  <Step title="Exchange your keys for a bearer token">
    Every Standard Checkout call is authenticated with a bearer token. Generate one by posting your two keys joined by a full stop, secret key first.

    ```bash theme={null}
    curl --location 'https://seerbitapi.com/api/v2/encrypt/keys' \
    --header 'Content-Type: application/json' \
    --data '{
        "key": "YOUR_SECRET_KEY.YOUR_PUBLIC_KEY"
    }'
    ```

    The token comes back as `data.EncryptedSecKey.encryptedKey`. Use it as `Authorization: Bearer <token>` on the next call.
  </Step>

  <Step title="Create a transaction">
    Post the amount, the customer, and a `paymentReference` you generate.

    ```bash theme={null}
    curl --location 'https://seerbitapi.com/api/v2/payments' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer YOUR_ENCRYPTED_KEY' \
    --data '{
        "publicKey": "YOUR_PUBLIC_KEY",
        "amount": "5000.00",
        "currency": "NGN",
        "country": "NG",
        "paymentReference": "order-8f3c1a2e-4b90",
        "email": "customer@example.com",
        "fullName": "Jane Doe",
        "callbackUrl": "https://yourwebsite.com/thank-you"
    }'
    ```

    A success returns `data.payments.redirectLink`:

    ```json theme={null}
    {
      "status": "SUCCESS",
      "data": {
        "code": "00",
        "payments": {
          "redirectLink": "http://checkout.seerbitapi.com/#/mid=YOUR_PUBLIC_KEY&paymentReference=order-8f3c1a2e-4b90",
          "paymentStatus": "08"
        },
        "message": "Successful"
      }
    }
    ```

    Make `paymentReference` unique and tie it to your own order — a UUID or your order ID with a prefix. Store it before you redirect; you need it to confirm the payment in step 4.
  </Step>

  <Step title="Send the customer to the checkout page">
    Redirect the customer to the `redirectLink` you just received. Pay with a [test card](/test-and-live), then let SeerBit return them to your `callbackUrl`.

    Treat that redirect as a hint, not proof — a customer can close the tab before it happens. The next step is what settles the order.
  </Step>

  <Step title="Confirm the payment server-side">
    Query the transaction with the same `paymentReference`.

    ```bash theme={null}
    curl --location 'https://seerbitapi.com/api/v3/payments/query/order-8f3c1a2e-4b90' \
    --header 'Authorization: Bearer YOUR_ENCRYPTED_KEY'
    ```

    Before you fulfil the order, check that the response reports success **and** that the amount and currency match what you charged. See [Verify a payment](/online-payments/after-payments/verify-payment) for the full response and what each field means.
  </Step>
</Steps>

## Next steps

<CardGroup cols={2}>
  <Card title="Set up webhooks" icon="webhook" href="/online-payments/after-payments/webhook-events">
    Get notified server-side instead of polling for a result.
  </Card>

  <Card title="Add payment methods" icon="wallet" href="/payment-methods/overview">
    Bank account, transfer, USSD and mobile money alongside cards.
  </Card>

  <Card title="Try Simple Checkout" icon="code" href="/online-payments/integrations/simple-checkout">
    Drop an inline payment form straight into your page instead.
  </Card>

  <Card title="Go live" icon="rocket" href="/go-live">
    Submit KYC, swap your keys, and run the go-live checklist.
  </Card>
</CardGroup>

<Tip>
  Stuck? Reach the team at [SeerBit Support](https://seerbitteam.freshdesk.com/support/home).
</Tip>


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