Ticket voucher redemption
Ticket vouchers allow customers to redeem a voucher barcode in their possession for a special ticket that will have a special or discounted price. In some circumstances the customer may still be required to pay certain surcharges.
Ticket voucher redemption flow
Voucher ticket types
GetTicketPricesForShowtime which will return a list of valid ticket types for the specific showtime.
Ticket price for ticket voucher will have voucher
restriction and valid voucher type code returned in the response.
GET: /ocapi/v1/showtimes/0002-2681/ticket-prices
{
"ticketPrices": [
{
"ticketTypeId": "0002-0050",
"price": {
"valueIncludingTax": 1.0,
"valueExcludingTax": 0.86,
"tax": 0.14
},
"isDefault": true,
"bookingFee": null,
"restrictions": ["Voucher"],
"rewardId": null,
"voucherTypeCodes": ["ADTMM"],
"thirdPartyMemberSchemeId": null,
"isShownAsPreviewWhenRestricted": false,
"displayPriority": 98,
"subscriptionId": null,
"discountId": null,
"discount": null
}
],
"relatedData": {
"ticketTypes": [
{
"type": "Normal",
"id": "0002-0050",
"description": {
"text": "Adult Voucher",
"translations": []
},
"longDescription": null,
"areaCategoryId": "0002-0000000001",
"isRestrictedToMembers": false,
"displayPriority": 0,
"isChildTicket": false,
"hopk": "",
"ticketCode": null,
"hoCode": "00098"
}
],
"items": [],
"discounts": []
}
}
Add ticket voucher to the order
When adding a ticket voucher to an order,
AddVoucher request type
field must be
ticket
.
POST: /ocapi/v1/orders/1aaa031755d64e6d9cbddfec4b3c8633/vouchers
{
"type": "ticket",
"credentials": {
"barcode": "ADTMM0000111",
"pin": "1234"
},
"showtimeId": "0002-2681"
}
OCAPI will validate the added ticket voucher for provided credentials and availability.
Response:
{
"voucher": {
"id": "b004dc1a727b406e9c1dd949258b3190",
"type": "Ticket",
"maskedBarcode": "........0111",
"voucherTypeCode": "ADTMM",
"voucherTypeDescription": {
"text": "Adult Movie Money",
"translations": []
}
},
"availableRedemptions": 1
}
Redeeming the voucher
SetShowtime call requires voucherId
(i.e., the id
returned by the
AddVoucher endpoint) to add the
ticket voucher to the order.
PUT: /ocapi/v1/orders/1aaa031755d64e6d9cbddfec4b3c8633/showtimes/0002-2681
{
"tickets": [
{
"ticketTypeId": "0002-0050",
"voucherId": "b004dc1a727b406e9c1dd949258b3190"
}
],
"seats": []
}
The SetShowtime
response includes the voucherId
associated with the added ticket voucher if a ticket voucher has been
added. Furthermore, the response will contain the details of the voucher. When the order is completed, the ticket
voucher is redeemed and cannot be refunded as it is shown in an example below.
GET: /ocapi/v1/orders/completed/1aaa031755d64e6d9cbddfec4b3c8633
{
"type": "Normal",
"admissionStatus": "NotAdmitted",
"id": "5b2523ea-a93b-4d8e-bad4-4ca7acf01aa0",
"collectionStatus": "NotCollected",
"refundStatus": "NotRefunded",
"ticketTypeId": "0002-0050",
"price": {
"valueIncludingTax": 3.0,
"valueExcludingTax": 2.58,
"tax": 0.42
},
"amountSaved": {
"valueIncludingTax": 15.0,
"valueExcludingTax": 15.0,
"tax": 0.0
},
"bookingFee": null,
"rewardId": null,
"ticketRedemptionCardId": null,
"voucherId": "b004dc1a727b406e9c1dd949258b3190",
"discountId": null,
"dealId": null,
"refundAvailability": {
"isAvailable": false,
"unavailableReason": "VoucherRedeemed"
}
}