Resolve Dispute
Close an open invoice dispute with an operator decision — accept it (optionally issuing an adjustment credit note against the invoice) or reject it — and a note.
resolved; rejecting moves it to
rejected. Either way the optional note is stored on the dispute and
resolved_at is set. Only an open dispute can be resolved — a dispute that
is already closed returns 404.
On accept you may also issue an adjustment credit note against the disputed
invoice with issue_credit: true. The credit goes through the ordinary
credit-note create path — fully ledgered,
reason dispute_resolution, type adjustment — and is issued before the
dispute is closed: if the credit fails, the dispute stays open for a clean
retry, never a resolved dispute with no promised credit. Maker-checker applies:
a credit issued by a non-admin user lands in pending_approval; API keys and
admin/owner users issue directly.
Find open disputes with List Disputes and read
one with Get Dispute.
Path Parameters
Request Body
The body is optional; an empty body accepts the dispute with no note and no credit.Example Request
Response
The response is a bare object — not wrapped indata. status is resolved
on accept and rejected on reject. credit_note is present only when a
credit was issued.
Fields
Errors
Authorizations
Tenant API key obtained from POST /auth/register or POST /v1/developer/keys.
Path Parameters
Dispute ID.
Body
Optional; an empty body accepts the dispute with no note and no credit.
accept (default) closes the dispute in the customer's favor (status → resolved); reject declines it (status → rejected).
accept, reject Optional admin resolution note.
Accept only. When true, issues an adjustment credit note (reason dispute_resolution) against the disputed invoice before the dispute is closed. Ignored on reject.
Credit amount in minor units. 0 or omitted means the invoice's amount still due (falling back to its total). Must not exceed the invoice total (today that violation surfaces as 500, not 400; 400 covers only a malformed body, an unknown outcome, or a negative credit_amount).
x >= 0Response
Dispute resolved. Action-shape {status} object (not the Dispute resource, not wrapped in data); credit_note is present only when a credit was issued.