Skip to main content
Voiding marks a redemption as not counting: it frees the customer’s entity limit, removes the redemption from billing and tells you and the provider through webhooks. It does not return the voucher to stock. Voiding needs the permission void-consumer-redemptions, which can be granted to API keys.

When to void

Void a redemption when the customer did not get the benefit, for example:
  • your system issued the code but the order behind it was cancelled before the customer saw the code;
  • a support case shows the code never reached the customer, and you issue a new one;
  • you redeemed by mistake (wrong voucher set, test call against production).
Do not void to “take back” a voucher the customer already used at the provider: the void does not invalidate the code at the provider. Call POST /consumer/v1/redemptions/{redemptionId}:void with a reason:
The response is 200 with the redemption, now with status: voided, voidedAt, voidedBy and voidReason.

Rules

  • 30-day window: you can void a redemption up to 30 days after its redeemedAt. Later attempts answer 422 void-window-expired; more.voidableUntil tells you when the window closed. Contact AllRide support for older cases.
  • Reason required: voidReason is 1-500 characters. It is visible to you and recorded in your audit log; it is never shown to the provider. Do not put personal data in it.
  • Once only: voiding a voided redemption answers 409 redemption-already-voided. With the same Idempotency-Key a retry replays the original 200.
  • No restock: the voucher is never returned to stock. A single-use voucher stays used; a multi-use voucher keeps its count.
  • Limits: the void frees one unit of the entity’s entityLimit for the redemption’s period and of the visitor’s per-person cap on an email-otp link. It does not lower the total redemptionCount of a Redemption Link and does not re-open an exhausted link; raise the link’s maxRedemptions for that.
  • Billing: a void before the month is invoiced removes the redemption from the next invoice. An invoice already issued is never changed by a later void; if an invoice is wrong, AllRide corrects it with a Stornorechnung and a corrected invoice (see Corrections: Stornorechnung). See Billing.
  • Statistics: the void counts in the statistics bucket of voidedAt, so a void in November of an October redemption shows in November.
  • Webhooks: you receive redemption-voided with the voided redemption. The provider receives its own redemption-voided with voidedAt but without your reason, entity or metadata.
  • Voids are recorded in your audit log for every caller, including API keys. AllRide staff who void on your behalf appear as AllRide in voidedBy.
Unknown or another partner’s redemption ids answer 404 redemption-not-found.