Cancel a sale (blocked if someone already checked in or the payment is still open)
Marks the sale as CANCELLED, releases its inventory and frees the associated numbered seats. IMPORTANT: a sale with tickets already used at the door is NOT cancelled: it responds 409 SALE_ALREADY_CHECKED_IN, because returning that inventory would put it back on sale with the person already inside. If the money must be returned, use POST /sales/{id}/refund. IMPORTANT: a PENDING sale charged through Bold has a payment link that may still be live — the Bold API never marks its links as expired —, so cancelling it could leave the buyer charged without a ticket. Before cancelling, the actual payment status is re-read: if Bold reports it approved, it responds 409 SALE_PAID_AT_GATEWAY and the sale is NOT cancelled under any circumstances (that sale gets confirmed or refunded). If the payment is still open or its status cannot be read, it responds 409 OPEN_PAYMENT_CONFIRMATION_REQUIRED: check the Bold dashboard and repeat the call with {“acknowledge_open_payment”: true} to explicitly accept the risk. Sales from other gateways and sales with no payment started are cancelled without that step.
/sales/{id}/cancelAuthorizationAPI key · headerrequiredAPI key prefixed with Bearer . Alternative: the x-api-key header with the raw key. Available scopes: read and write (see /.well-known/oauth-protected-resource).
x-api-keyAPI key · headerrequiredRaw API key (without Bearer ), alternative to Authorization.
idstringrequiredX-Workspace-IdstringActive workspace to operate on. Optional: when omitted, the default workspace of the user who owns the key is used (pickActiveOrg).
application/jsonacknowledge_open_paymentbooleanOK
dataSalerequiredShow propertiesHide properties
idstringrequiredreferencestringrequiredstatusstringrequiredPENDINGCONFIRMEDABANDONEDCANCELLEDREFUNDEDchannelstringrequiredsubtotalnumberrequireddiscountAmountnumberrequiredserviceFeenumberrequiredivanumberrequiredtotalnumberrequiredcurrencystringrequiredbuyerNamestringrequiredbuyerEmailstringrequiredbuyerPhonestring | nullrequiredShow propertiesHide properties
stringnullbuyerDocumentTypestring | nullrequiredShow propertiesHide properties
stringnullbuyerDocumentNumberstring | nullrequiredShow propertiesHide properties
stringnullorganizationIdstring | nullrequiredShow propertiesHide properties
stringnullpaymentProviderstring | nullrequiredShow propertiesHide properties
stringnullpaymentRefstring | nullrequiredShow propertiesHide properties
stringnullconfirmedAtstring | nullrequiredShow propertiesHide properties
stringnullcreatedAtstringrequiredfailureReasonstring | nullrequiredShow propertiesHide properties
stringnullpaymentStatusstring | nullrequiredStatus of the latest payment event. Usually the payment gateway's RAW status in its own vocabulary. Values prefixed with FT_ come from FreeTicket, not the gateway: currently FT_SALE_APPROVED_POST_CONFIRM, which marks that the gateway re-notified an already-confirmed charge — this is how Bold reports its refunds. A CONFIRMED sale with this status may have money refunded that is not yet recorded.
Show propertiesHide properties
stringnulldeclineCodestring | nullrequiredShow propertiesHide properties
stringnullMissing or invalid credential.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyInsufficient role or resource not accessible.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyResource does not exist or is out of scope.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyConflict: the resource does not allow this operation in its current state.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsanyRequest body/parameter validation failed.
errorobjectrequiredShow propertiesHide properties
codestringrequiredmessagestringrequiredretryablebooleanrequireddetailsany
