---
title: "Get a payment by ID"
method: GET
path: "/api/v3/subscriptions/payments/{paymentId}"
tags: ["Payments"]
---

# Get a payment by ID

`GET /api/v3/subscriptions/payments/{paymentId}`

## Path parameters

- `paymentId` string, uuid, required

## Response `200`

Payment found.

- Payment — A single recurring-billing charge. One record per attempted cycle; starts as `PENDING` and settles to `SUCCEEDED` or `FAILED`.
  - `id` string, uuid, required
  - `subscriptionId` string, uuid, required
  - `billedAmount` Price, required — Monetary amount. `amount` is a decimal string. `asset` is an ISO 4217 code for fiat or an uppercase stablecoin symbol — e.g. `USD`, `EUR`, `USDC`, `USDT`.
    - `amount` string, required
    - `asset` string, required
  - `paidAmount` Price, required — Monetary amount. `amount` is a decimal string. `asset` is an ISO 4217 code for fiat or an uppercase stablecoin symbol — e.g. `USD`, `EUR`, `USDC`, `USDT`.
    - `amount` string, required
    - `asset` string, required
  - `balance` PaymentBalance — Balance view of a succeeded payment. `asset` is the fiat code for a conversion, or the paid stablecoin for "same crypto as paid". `feeTotal == feeBase + feeProvider + feeNetwork`.
    - `asset` string, required — AnyAsset code (fiat or stablecoin).
    - `amount` string, required — Gross credited, in `asset`.
    - `feeBase` string, required
    - `feeProvider` string, required
    - `feeNetwork` string, required
    - `feeTotal` string, required
  - `status` 'PENDING' | 'SUCCEEDED' | 'FAILED', required — `PENDING` — charge initiated, not yet settled. `SUCCEEDED` — charge settled successfully. `FAILED` — charge did not settle.
  - `paidAt` integer — Unix epoch seconds.
  - `failure` PaymentFailure — Failure details. Null unless `status` is `FAILED`.
    - `reason` string, required — Classification of the failure. One of a fixed set of values: `INSUFFICIENT_BALANCE`, `INSUFFICIENT_ALLOWANCE`, `ON_CHAIN_REVERT`, `DROPPED_BY_BLOCKCHAIN`, `REJECTED_BY_COMPLIANCE`, `PROVIDER_ERROR`, `UNKNOWN`.
  - `cycleNumber` integer, required — Which billing cycle this payment belongs to.
  - `createdAt` integer, required — Unix epoch seconds.

## Other responses

- `401` — Caller is unauthenticated.
- `403` — Caller is authenticated but not authorized for this resource.
- `404` — Resource not found.
- `500` — Unexpected server error.

---

[API](https://skmtc.net/confirmo/apis/confirmo-subscribe-api.md) · [All operations](https://skmtc.net/confirmo/apis/confirmo-subscribe-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/confirmo/confirmo-subscribe-api/versions/105015030952/schema)
