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

# Verify Transaction

> Server-to-server confirmation of transaction status and settlement details

## Path Parameters

<ParamField path="reference" type="string" required>
  The unique merchant-generated transaction reference to verify.
</ParamField>

## Response

<ResponseField name="status" type="string">
  Returns `success` or `error`.
</ResponseField>

<ResponseField name="data" type="object">
  <Expandable title="properties">
    <ResponseField name="reference" type="string">
      Merchant transaction reference.
    </ResponseField>

    <ResponseField name="amount" type="integer">
      Amount paid in Kobo.
    </ResponseField>

    <ResponseField name="fee" type="integer">
      Handle gateway fee in Kobo (2% capped at ₦2,000).
    </ResponseField>

    <ResponseField name="netAmount" type="integer">
      Net merchant payout amount in Kobo.
    </ResponseField>

    <ResponseField name="status" type="string">
      `SUCCESS`, `FAILED`, or `PENDING_AUTHORIZATION`.
    </ResponseField>

    <ResponseField name="channel" type="string">
      `handle_push`, `handle_qr`, or `handle_pos`.
    </ResponseField>

    <ResponseField name="paidAt" type="string">
      ISO-8601 timestamp of payment completion.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET https://api.handle.ng/v1/charges/verify/ORD-1092 \
    -H "Authorization: Bearer sk_live_..."
  ```
</RequestExample>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "status": "success",
    "data": {
      "reference": "ORD-1092",
      "amount": 1500000,
      "currency": "NGN",
      "fee": 30000,
      "netAmount": 1470000,
      "status": "SUCCESS",
      "channel": "handle_push",
      "customer": {
        "handle": "@ayodeji",
        "phone": "08012345678",
        "name": "Ayodeji Peters"
      },
      "settlement": {
        "status": "SETTLED",
        "settledAt": "2026-09-21T08:26:15Z"
      },
      "paidAt": "2026-09-21T08:25:58Z"
    }
  }
  ```
</ResponseExample>
