POST
/v1/payments/{id}/cancelscope payments:writeBatalkan payment
Membatalkan payment yang masih pending. Payment dengan status lain mengembalikan 409 INVALID_STATE_TRANSITION. Payment yang sudah dibatalkan masih bisa menjadi paid selama masa tenggang (paid_after_cancel: true).
Header
AuthorizationBearer <api_key>wajibfq_live_… atau fq_test_…; mode ditentukan oleh key.
Idempotency-Keystring ≤ 255Disimpan 24 jam. Request sama → respons sama; key yang sama untuk payment lain → 409 IDEMPOTENCY_KEY_REUSED.
Path
idstringwajibID payment, berawalan pay_.
Respons
200Payment dibatalkan. Objek Payment dengan status cancelled.
400INVALID_PARAMETER: id bukan ID payment atau Idempotency-Key lebih dari 255 karakter.401MISSING_API_KEY, INVALID_API_KEY, API_KEY_REVOKED403INSUFFICIENT_SCOPE, IP_NOT_ALLOWED404RESOURCE_NOT_FOUND: payment tidak ada di project dan mode API key ini.409INVALID_STATE_TRANSITION: payment bukan lagi pending. Juga IDEMPOTENCY_KEY_REUSED.429RATE_LIMITED1import FQris from '@fqris/node';
2const fqris = new FQris(process.env.FQRIS_KEY);
3
4const payment = await fqris.payments.cancel('pay_01JA2Z3K8M');
5console.log(payment.status);
200Payment
1{
2 "id": "pay_01JA2Z3K8M",
3 "object": "payment",
4 "mode": "test",
5 "status": "cancelled",
6 "base_amount": 20000,
7 "unique_code": 137,
8 "final_amount": 20137,
9 "currency": "IDR",
10 "reference_id": "TOPUP-88812",
11 "qris": {
12 "string": "00020101021226…6304A1B2",
13 "merchant_name": "TOKO UCUY"
14 },
15 "checkout_url": "https://pay.fqris.id/p/ck_8f2…",
16 "expires_at": "2026-10-14T05:55:00Z",
17 "paid_at": null,
18 "refunded_amount": 0,
19 "created_at": "2026-10-14T05:40:00Z",
20 "updated_at": "2026-10-14T05:45:00Z"
21}
Apakah halaman ini membantu?