chatformdocs
API referenceV1

List a form's payment attempts, newest first

Every checkout opened on a verified payment block, including the ones that never became an answer — a payment that arrived after the respondent left, a duplicate from a second tab, a failure. `status` defaults to `all`. Amounts are given both in minor units (`amount_minor`, what the gateway charged) and major units. Pass `next_cursor` back as `cursor` for the next page.

GET
/v1/forms/{id}/payments

Authorization

AuthorizationBearer <token>

A server-side secret key. Never send one from a browser — a request carrying an Origin header is refused for this reason.

In: header

Path Parameters

id*string

Query Parameters

status?string
Default"all"

Value in

  • "created"
  • "paid"
  • "failed"
  • "expired"
  • "refunded"
  • "superseded"
  • "all"
response_id?string
Lengthlength <= 40
limit?integer
Range1 <= value <= 100
Default25
cursor?string

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/forms/string/payments"
{  "data": [    {      "id": "string",      "object": "payment",      "form_id": "string",      "block_ref": "string",      "response_id": "string",      "provider": "string",      "environment": "test",      "mode": "test",      "status": "created",      "duplicate": true,      "amount_minor": -9007199254740991,      "amount": 0,      "currency": "string",      "provider_order_id": "string",      "provider_payment_id": "string",      "dashboard_url": "string",      "failure_reason": "string",      "settled_to_response": true,      "payment_account_id": "string",      "created_at": 0,      "updated_at": 0,      "paid_at": 0,      "expires_at": 0    }  ],  "has_more": true,  "next_cursor": "string"}