Refund
Request a refund.
Only Kitionz Test Air supports this today. With your Live suppliers this call is refused, so build it in Test but do not depend on it in Live yet.
What: requests a refund for a CANCELLED booking. Defaults to everything left to refund; send amount for a partial refund.
When: after the booking is cancelled (409 BOOKING_NOT_REFUNDABLE before that: cancel it first).
Note: 422 REFUND_EXCEEDS_REMAINING when the amount is 0 or more than what is left (details.remaining, a number). Suppliers without refund support return 422 CAPABILITY_NOT_SUPPORTED. Carries the Idempotency-Key header; a retry returns the same refund.
Authentication
Your Kitionz API key, sent as Authorization: Bearer keyId:secret. Create a Test key at sandbox.kitionz.com → API keys, a Live key at kitionz.com → API → API keys.
Path parameters
Headers
A new unique value (a UUID) for every write: one booking, one cancel. Save it with your order before you call. Send the SAME value again only when you send the SAME request again after a timeout: you get the first answer back. Reusing it on any other write answers 422 IDEMPOTENCY_KEY_REUSED_WITH_DIFFERENT_PARAMS.