---
title: Get a transaction
description: Look up any of your project's transactions by your own reference.
api: GET /payments/{reference}
---

Returns a collection, payout or refund by its `external_reference`. If it's still pending, RazPay also asks the provider once, so this doubles as a status check.

- **`reference`** · path · `string` · required

  The transaction's `external_reference`.

## Response

A [transaction](/docs/concepts/transactions#the-transaction-object), plus:

- **`refunds`** · `array` · required

  For a collection, its refunds (each a transaction with `type: refund`). Empty otherwise.

- **`refund_summary`** · `object` · required

  For a collection, how much has been returned.

  **properties**

  - **`refunded`** · `number` · required

    Total of successful refunds.

  - **`pending`** · `number` · required

    Total of refunds still in progress.

  - **`refundable`** · `number` · required

    What's left to refund. `0` for anything that can't be refunded.

```json 200
{
  "success": true,
  "message": "",
  "data": {
    "external_reference": "order-1001",
    "type": "collection",
    "direction": "in",
    "provider_id": "momo",
    "provider_ref": "6f0a2e1c-8b1d-4a8e-9a55-0c7d0e3b1f42",
    "amount": 30,
    "currency": "SZL",
    "status": "successful",
    "financial_tx_id": "6543210987",
    "payer_phone": "26876123456",
    "metadata": {},
    "created_at": 1760774400,
    "updated_at": 1760774460,
    "refunds": [],
    "refund_summary": { "refunded": 0, "pending": 0, "refundable": 30 }
  }
}
```

```json 404
{ "success": false, "message": "transaction not found", "data": null }
```
