# Get Payment Details

This endpoint returns the detailed information about a payment processed through Zotlo. It returns the full transaction record, including payment metadata, provider response, logs, and refund information.

It is commonly used to verify purchase results, diagnose failed payments, or fetch receipt details.

Use the **GET** method to query a payment and `transactionId` is required.

<table data-header-hidden><thead><tr><th width="99.640625"></th><th></th></tr></thead><tbody><tr><td>Method</td><td><h4>  <mark style="color:green;background-color:$primary;"><code>GET</code></mark></h4></td></tr><tr><td>URL</td><td><pre data-overflow="wrap" data-full-width="false"><code>https://api.zotlo.com/v1/transaction/detail?transactionId=TRANSACTION_ID
</code></pre></td></tr></tbody></table>

## **Request Parameters**

<table><thead><tr><th width="176.16015625">Field</th><th width="115.48828125">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>transactionId</code></td><td>Required</td><td>The ID of the transaction you want to query.</td></tr><tr><td><code>isSandbox</code></td><td>Required</td><td><p>Indicates whether the subscription was created in sandbox or live mode.Send:</p><ul><li><strong>true</strong> → sandbox</li><li><strong>false</strong> → live</li></ul></td></tr></tbody></table>

## **Sample Request**

{% code overflow="wrap" %}

```js
GET https://api.zotlo.com/v1/transaction/detail?transactionId=TRANSACTION_ID HTTP/1.1
AccessKey: ••••••
AccessSecret: ••••••
Content-Type: application/json
ApplicationId: •
Language: ••
```

{% endcode %}

{% hint style="info" %}
You can find your **AccessKey** and **AccessSecret** in the Zotlo Panel under **Developer Tools → API Keys**

Sending **ApplicationId** is optional.
{% endhint %}

## Successful Response

{% code overflow="wrap" %}

```json
{
  "meta": {
    "requestId": "Rhk8q8-REQ-676d1460b284f",
    "httpStatus": 200
  },
  "result": {
    "transaction": {
      "id": 143199,
      "payment_type": "consumable",
      "original_transaction_id": "d8ff7792-1c63-4370-be93-447dacaa09ea",
      "subscriber_id": "user@sample.com",
      "transaction_id": "0741a0ac-21d8-4750-941f-064f340700c3",
      "provider_transaction_id": "863AB913JK7512U",
      "package_id": "2",
      "status": "consumable",
      "purchase_date": "2024-12-25 11:16:36",
      "expire_date": "2024-12-25 11:16:36",
      "original_purchase_date": "2024-12-25 11:16:36",
      "price": "1.49",
      "currency": "USD",
      "country": "US",
      "provider_name": "PayPal",
      "subscriptionId": 0,
      "custom_parameters": {
        "invoice": { ... },
        "clientUuid": "c941fc12-cac3-42f8-9790-8bb6e9f4793c",
        "dataWarehouse": { ... },
        "utm": { ... },
        "agreement": { ... },
        "merchantParameters": [],
        "cardBrand": "unknown",
        "threeds": "0",
        "installment": "1",
        "bank": "paypal",
        "subscriberIpAddress": "67.219.150.38",
        "receiptDetail": {
          "url": "https://dashboard.zotlo.com/receipt/ff388f17-b35d-4851-a59c-05ff64477d11"
        }
      },
      "credit_card": "",
      "checkout_type": "paypal",
      "refund": null,
      "detail": [
        {
          "key": "receiptUrl",
          "value": "https://dashboard.zotlo.com/receipt/ff388f17-b35d-4851-a59c-05ff64477d11"
        }
      ],
      "exchange": {
        "status": false,
        "detail": []
      }
    },
    "transactionLog": [
      {
        "providerId": 3062,
        "createDate": "2024-12-25 11:16:05",
        "requestType": "transaction",
        "requestData": "{\"requestType\":\"SALE\", ...}",
        "responseData": "{\"isMockPayment\":true,\"success\":true}",
        "subscriberId": "liteye2440@rabitex.com",
        "transactionId": "0741a0ac-21d8-4750-941f-064f340700c3",
        "paymentType": "paypal",
        "code": "S0000001",
        "message": null
      }
    ]
  }
}
```

{% endcode %}

## Key **Response Fields**

<table><thead><tr><th width="184.015625">Field</th><th>Description</th></tr></thead><tbody><tr><td>payment_type</td><td>Type of payment. <code>subscription</code> or <code>consumable</code> (one-time).</td></tr><tr><td>subscriber_id</td><td>The email or phone number of the user who made the purchase.</td></tr><tr><td>transaction_id</td><td>Unique ID of the transaction. </td></tr><tr><td>status</td><td>Payment or subscription action type. Possible values: <code>trial</code>, <code>trial_to_paid</code>, <code>start_paid</code>, <code>renewal</code>, <code>reactive</code>, <code>consumable</code>.</td></tr><tr><td>purchase_date</td><td>When the transaction was processed.</td></tr><tr><td>expire_date</td><td>Expiration date (for subscription transactions).</td></tr><tr><td>custom_parameters.paymentMethod</td><td>The payment method used.</td></tr><tr><td>transactionLog.code</td><td><p>Standardized payment status or error code. </p><p>(See <a href="../payment-error-codes">Payment Status Codes</a>)</p></td></tr></tbody></table>

## **Failed Response**

All failed responses follow the same standard error format.\
(See: [Error Handling](https://docs.zotlo.com/integrating-zotlo/api-reference/error-handling))
