---
title: "List declined payments"
method: GET
path: "/x402/declined-payments"
tags: ["Payments"]
---

# List declined payments

`GET /x402/declined-payments`

The 50 most recent payments your org's spend policy declined, newest
first. Use this to see why an outbound payment was refused (a cap, the
payee allowlist, or the kill-switch) instead of only reading the
dashboard.

## Response `200`

Recently declined payments

- object
  - `success` true, required
  - `data` object[], required
    - `id` string, uuid, required
    - `challenge_id` string, uuid, nullable — The challenge that was declined, if still present.
    - `counterparty_org` string, uuid, nullable — The payee (challenger) org, when known.
    - `network` 'base' | 'base-sepolia', required
    - `amount` string, required — Amount in token base units.
    - `reason` string, required — Why the payment was declined (cap, allowlist, paused).
    - `declined_at` string, date-time, required

## Other responses

- `401` — Invalid or missing API key
- `403` — Authenticated caller lacks permission for the operation
- `429` — Rate limit exceeded

---

[API](https://skmtc.dev/primitive/apis/primitive-api.md) · [All operations](https://skmtc.dev/primitive/apis/primitive-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/primitive/primitive-api/revisions/c2299d28022c/schema)
