Redeem a welcome proof as active merchant owner/staff
Requires a Better Auth session and an active merchant owner/staff role checked from the database. Corporate users and unrelated merchants have no access; a live platform admin role does not bypass merchant membership. Returns no customer account, name, phone, identity-document or health data. Repeated collection returns already_redeemed.
Authorization
bearer In: header
Path Parameters
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/v1/rewards/merchants/497f6eca-6276-4993-bfeb-53cbbbba6f08/redeem" \ -H "Content-Type: application/json" \ -d '{ "qrToken": "string" }'{ "status": "ready", "campaign": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "title": "string", "deliveryKind": "physical_gift" }, "expiresAt": "2019-08-24T14:15:22Z", "redeemedAt": "2019-08-24T14:15:22Z"}Your claim with a short-lived signed QR and online fallback code GET
Proof is private and contains no PII. Refresh the QR before its expiresAt. Pickup always requires online merchant authorization and an atomic redemption; offline signature verification alone cannot confirm inventory or collection. The digital_voucher kind uses this claim proof as its voucher; no external voucher delivery is implied.
Validate a welcome proof as active merchant owner/staff POST
Requires a Better Auth session and an active merchant owner/staff role checked from the database. Corporate users and unrelated merchants have no access; a live platform admin role does not bypass merchant membership. Returns no customer account, name, phone, identity-document or health data. Repeated collection returns already_redeemed.