Event - Coupon Issuance - Unlock Type
This includes events where a coupon is gifted/issued in the Punchh system, triggered as a result of any configuration or activity against a user.
Note: This includes coupons that are gifted to a user via a campaign, whether mass-generated or dynamically generated.
{
"content_id": "CONTENT_ID_GOES_HERE",
"timestamp": 1646225231,
"business_id": 574,
"business_uuid": "BUSINESS_UUID_GOES_HERE",
"business_slug": "slugname",
"event_name": "coupons",
"event_type": "",
"action": "create",
"payload": {
"app_device_id": null,
"applicable_flat_discount": 0,
"applicable_percentage_discount": 0,
"bar_code": null,
"campaign_name": "Coupon Mobile",
"code": "CODE_GOES_HERE",
"coupon_campaign_id": 58298,
"coupon_id": COUPON_ID_GOES_HERE,
"coupon_type": "unlock",
"created_at": "2022-03-02T12:47:11Z",
"discount": null,
"email": "test@example.com",
"employee_id": null,
"expiry_at": null,
"gift_count": null,
"location_id": null,
"processed_at": null,
"receipt_amount": null,
"receipt_datetime": null,
"receipt_subtotal_amount": null,
"redeemable": {
"applicable_as_loyalty_redemption": false,
"created_at": "2016-06-22T08:45:00Z",
"description": "Free Entree",
"discount_amount": 3,
"discount_channel": "all",
"expire_redemption_code_with_reward_end_date": false,
"expiry_date": null,
"meta_data": "",
"name": "Entree",
"points_required_to_redeem": null,
"redeemable_id": 830,
"redeemable_image_url": "IMAGE_URL_GOES_HERE",
"redeemable_properties": null,
"redemption_expiry": 120,
"status": "activated",
"updated_at": "2019-11-06T08:40:38Z"
},
"redeemed_menu_items": [],
"revenue_code": null,
"revenue_id": null,
"status": "issued",
"transaction_no": null,
"updated_at": "2022-03-02T12:47:11Z",
"user": {
"account_balance": {
"banked_currency": 0,
"current_membership_level_name": "level 1",
"last_visit": null,
"loyalty_points": null,
"net_balance": 0,
"net_debits": 0,
"pending_points": null,
"total_credits": null,
"total_debits": null,
"total_lifetime_points": 0,
"total_point_credits": 0,
"total_redeemable_visits": null,
"total_visits": null,
"unbanked_points": 0,
"unredeemed_cards": null,
"user_id": 111111111
},
"anniversary": null,
"avatar_remote_url": null,
"birthday": "1999-01-01",
"email": "test@example.com",
"external_source": "",
"external_source_id": "SOURCE_ID_GOES_HERE",
"first_name": "FIRST_NAME_GOES_HERE",
"gender": null,
"guest_type": "Loyalty",
"last_activity_at": "2022-03-02T12:46:28Z",
"last_name": "LAST_NAME_GOES_HERE",
"marketing_email_subscription": true,
"marketing_pn_subscription": true,
"phone": null,
"preferred_locale": null,
"secondary_email": null,
"signup_channel": "MobileEmail",
"sms_subscription": false,
"unsubscribe_reason": null,
"unsubscribed": false,
"user_id": 111111111,
"user_status": "active"
},
"user_coupon_redemption_id": null,
"user_id": 111111111
}
}
Meta Fields
Meta Fields are common attributes such as content_id, timestamp, etc. that are returned in event responses, providing additional information about events. Click here to view the descriptions of the attributes.
Response Parameters
| Payload | ||
| app_device_id | String | Unique ID of the app device. The ID helps Punchh identify each device so that certain rewards can be awarded individually to each device instead of per user. For example, the sign-up reward is given to each device ID to prevent fraudulent sign-ups so that a user cannot do repeated sign-ups from a single device to get rewards. It should not change even if the user resets a device. |
| applicable_flat_discount | Integer | Applicable flat discount as configured during a coupon campaign in Punchh |
| applicable_percentage_discount | Date_time | Applicable percentage discount as configured during a coupon campaign in Punchh |
| bar_code | String | Barcode generated for the order |
| campaign_name | String | Coupon campaign name |
| code | String | Actual coupon code generated for each coupon associated with a guest |
| coupon_campaign_id | Integer | Unique coupon campaign ID generated for each configured in Punchh |
| coupon_id | Integer | Unique coupon ID generated in Punchh for each coupon, to be used for tracking purposes |
| coupon_type | String | Coupon type as categorized in Punchh (i.e., discount or unlock) |
| created_at | Date_time | Date/time when the coupon was created for an end-user in the system |
| discount | Integer | Discount value of the coupon |
| String | Email address of the user | |
| employee_id | String | ID of the employee |
| expiry_at | Date_time | Date/time when the coupon expires |
| gift_count | Integer | In a points-based business, the gift count is the number of points that are gifted to guests. In a visit-based business, it is the number of visits that are gifted. |
| location_id | Integer | Unique ID of the location associated with the discount coupon. This is for reference purposes. If no location ID is provided, the ID of the headquarters location will be used. |
| processed_at | Date_time | Timestamp when the redemption was processed |
| receipt_amount | Float | Order amount before taxes, calculated as the sum of all item amounts minus any discounts. This is the amount used to calculate loyalty points/visits. The value of this parameter should match subtotal_amount. For example, if the order amount is $10, both receipt_amount and subtotal_amount will be 10. If a $2 discount is applied, both will be 8. |
| receipt_datetime | Date_time | Receipt date/time for the order |
| receipt_subtotal_amount | Float | Order amount before any taxes (sum of all amounts minus any discounts). Same as receipt_amount. For historical reasons, this parameter is included along with receipt_amount in the response. |
| redeemable | Object | Redeemable object (populated in case the coupon type is Unlock). See Event - Redeemables for descriptions of the attributes. |
| redeemed_menu_items | Array Object | See the redeemed_menu_items object in Event - Coupon Issuance - Discount Type |
| revenue_code | String | Name of the POS function that designates order fulfillment method (e.g., dine-in, to-go/take-out, call-in pickup, call-in deliver, etc). Some POS call this Revenue Center, Order Method, Order Mode, etc. The values assigned here should represent the way the order is fulfilled for the customer, not the area in the restaurant where the order is placed (e.g., not bar, patio, dining room, etc.). |
| revenue_id | String | ID of the POS function that designates the order fulfillment method. Example: 1 for dine-in; 2 for to-go/take out; 3 for call-in pickup; 4 for call-in deliver, etc. Some POS call this revenue center, order method, order mode, etc. The values assigned here should represent the way the order is fulfilled for the customer, not the area in the restaurant where the order is placed (e.g., not bar, patio, dining room, etc.). |
| status | String | Status includes: honored, issued, void |
| transaction_no | String | Transaction number of the order |
| updated_at | Date | Date/time when the coupon was updated for an end-user in the system |
| user_coupon_redemption_id | Integer | Unique coupon redemption ID generated after a coupon is redeemed successfully in Punchh, to be used for reporting purposes |
| user_id | Integer | Unique ID of the user generated in Punchh |
| User | Object | See the user object in Event - Rewards Expiry Reminder |
| user.account_balance | Object | See the account_balance object in Event - Guest |