list_recent_payments
List the most recent subscription payments for one project with optional status filter. Reverse-chronological, no raw webhook payloads.
Return the most recent subscription payment rows for a project, reverse-chronological by occurred_at. Rows carry provider references (external_payment_id, external_event_id) but omit raw webhook payloads. Useful for quick revenue inspection and failure triage.
Requires ability
The token behind the MCP session must hold it, or the call is refused with TOKEN_MISSING_ABILITY.
Annotations
It reads and never changes anything.
Arguments
project_id*stringUUID of the project whose payments to list.
statusstringoptionalPayment status filter. One of: successful, failed, pending, refunded
successfulfailedpendingrefundedlimitintegeroptionalMaximum payments to return (1..200, default 50).
1max200What it returns
{ "data": [ { "id": "8b0c4a15-e792-4360-95d8-1f47c0b3e926", "subscription_id": "5b7e2d40-1a86-4c39-97f2-e83d0b16c5a4", "method_id": "8b0c4a15-e792-4360-95d8-1f47c0b3e926", "currency_id": "8f27a0d4-63be-4915-8c07-1a5d9e34b628", "status": "successful", "amount": "29.00", "transaction_fee": 87, "calculated_fee": "0.87", "external_payment_id": "pi_...", "external_event_id": "evt_...", "billing_reason": "subscription_cycle", "occurred_at": "2026-05-18T10:05:00Z" } ], "meta": { "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13", "total": 50, "limit": 50 }}How it fails
TOKEN_MISSING_ABILITYtoken lacks project-subscription:view-any.
RESOURCE_NOT_FOUNDproject_id names a project the token cannot see: unknown, another team's, or outside the token's scope:project: allow-list.
VALIDATION_FAILEDstatus is not one of the payment statuses; the error context lists the supported values.
How is this guide?
Last updated on