EVENTS.VOUCHER.CREATED event indicates that a new voucher has been successfully created in Voucherify. It informs other systems or applications about the addition of a new voucher. The VOUCHER.CREATED webhook is sent only when a single voucher is created. When vouchers are created in bulk, this action does not trigger the webhook.
The webhook provides, among others, the following details:
Event data object schema for voucher.created.
Object representing a voucher.
Show child attributes
Assigned by the Voucherify API, identifies the voucher.
"v_mkZN9v7vjYUadXnHrMza8W5c34fE5KiV"
A code that identifies a voucher. Pattern can use all letters of the English alphabet, Arabic numerals, and special characters.
"WVPblOYX"
A unique campaign name, identifies the voucher's parent campaign.
"Gift Card Campaign"
Assigned by the Voucherify API, identifies the voucher's parent campaign.
"camp_FNYR4jhqZBM9xTptxDGgeNBV"
Tag defining the category that this voucher belongs to. Useful when listing vouchers using the List Vouchers endpoint.
Unique category ID assigned by Voucherify.
"cat_0bb343dee3cdb5ec0c"
Contains details about the category.
Show child attributes
Unique category ID assigned by Voucherify.
Category name.
Category hierarchy.
Timestamp representing the date and time when the category was created in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
The type of the object represented by the JSON. This object stores information about the category.
category Timestamp representing the date and time when the category was updated in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
The type of the stacking rule eligibility.
JOINT, EXCLUSIVE Defines the type of the voucher.
GIFT_VOUCHER, DISCOUNT_VOUCHER, LOYALTY_CARD Contains information about discount.
Show child attributes
Defines the type of the voucher.
AMOUNT Amount taken off the subtotal of a price. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000.
Maximum discount amount per order.
Defines how the discount is applied to the customer's order.
APPLY_TO_ORDER, APPLY_TO_ITEMS, APPLY_TO_ITEMS_PROPORTIONALLY, APPLY_TO_ITEMS_PROPORTIONALLY_BY_QUANTITY, APPLY_TO_ITEMS_BY_QUANTITY Flag indicating whether the discount was calculated using a formula.
Object representing gift parameters. Child attributes are present only if type is GIFT_VOUCHER. Defaults to null.
Show child attributes
Total gift card income over the lifetime of the card. Value is multiplied by 100 to precisely represent 2 decimal places. For example, $100 amount is written as 10000.
10000
Available funds. Value is multiplied by 100 to precisely represent 2 decimal places. For example, $100 amount is written as 10000.
500
Defines how the credits are applied to the customer's order.
APPLY_TO_ORDER, APPLY_TO_ITEMS Object representing loyalty card parameters. Child attributes are present only if type is LOYALTY_CARD. Defaults to null.
Show child attributes
Total number of points added to the loyalty card over its lifespan.
7000
Points available for reward redemption. This is calculated as follows: balance = points - expired_points - subtracted_points - redemption.redeemed_points.
6970
The next closest date when the next set of points are due to expire.
"2023-05-30"
The amount of points that are set to expire next.
Shows the number of pending points that will be added to the loyalty card when they are activated automatically or manually.
Shows the total number of expired points over the lifetime of the loyalty card.
Shows the total number of subtracted points over the lifetime of the loyalty card.
Activation timestamp defines when the code starts to be active in ISO 8601 format. Voucher is inactive before this date.
"2021-12-01T00:00:00.000Z"
Expiration timestamp defines when the code expires in ISO 8601 format. Voucher is inactive after this date.
"2021-12-31T00:00:00.000Z"
Set recurrent time periods when the voucher is valid. For example, valid for 1 hour every other day. start_date required when including the validity_timeframe.
Show child attributes
Defines the intervening time between two time points in ISO 8601 format, expressed as a duration. For example, a voucher with an interval of P2D will be active every other day.
"P2D"
Defines the amount of time the voucher will be active in ISO 8601 format. For example, a voucher with a duration of PT1H will be valid for a duration of one hour.
"PT1H"
Integer array corresponding to the particular days of the week in which the voucher is valid.
0 Sunday1 Monday2 Tuesday3 Wednesday4 Thursday5 Friday6 Saturday0, 1, 2, 3, 4, 5, 6 Allows to create Happy Hours scenario.
Show child attributes
Defines the reccuring period/s of time when the happy hour promotion will be active.
Show child attributes
Defines the starting hour for the happy hours promotion in HH:mm format. Happy hours are inactive before this time.
"12:00"
Integer array corresponding to the particular days of the week in which the campaign is valid.
0 Sunday1 Monday2 Tuesday3 Wednesday4 Thursday5 Friday6 SaturdayDefines the ending hour for the happy hours promotion in HH:mm format. Happy hours are inactive after this time.
"14:00"
A flag to toggle the voucher on or off. You can disable a voucher even though it's within the active period defined by the start_date and expiration_date.
true indicates an active voucherfalse indicates an inactive voucherAn optional field to keep any extra textual information about the code such as a code description and details.
The metadata object stores all custom attributes assigned to the code. A set of key/value pairs that you can attach to a voucher object. It can be useful for storing additional information about the voucher in a structured format.
Stores links to images of QR and barcode that correspond to an encrypted voucher code.
Show child attributes
Stores Quick Response (QR) representation of encrypted code.
Flag indicating whether this voucher is a referral code; true for campaign type REFERRAL_PROGRAM.
Timestamp representing the date and time when the voucher was created in ISO 8601 format.
"2021-12-22T10:13:06.487Z"
Timestamp representing the date and time when the voucher was last updated in ISO 8601 format.
"2021-12-22T10:14:45.316Z"
Unique customer ID of voucher owner.
"cust_eWgXlBBiY6THFRJwX45Iakv4"
List of Validation Rules Assignments
Show child attributes
The type of the object represented by JSON. This object stores information about validation rules assignments.
list Identifies the name of the attribute that contains the array of validation rules assignments.
data Contains array of validation rules assignments.
Show child attributes
The unique identifier for an assignment.
The unique identifier for a rule.
The unique identifier for a related object.
The type of a related object.
campaign, voucher, earning_rule The type of the object represented by JSON.
validation_rules_assignment The validation status of the assignment.
VALID, PARTIALLY_VALID, INVALID The list of omitted rules.
Timestamp representing the date and time when the object was created in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
Timestamp representing the date and time when the object was last updated in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
Total number of validation rules assignments.
x >= 0Unique identifier of the referrer assigned by Voucherify.
"cust_nM4jqPiaXUvQdVSA6vTRUnix"
The type of the object represented by JSON. Default is voucher.
This object stores a summary of publish events: an events counter and an endpoint which can be called to return details of each event. A publication is required for loyalty cards and referral codes. This object gets updated whenever a voucher has been published. Publication means assigning a code to a particular customer.
Show child attributes
The type of the object represented is by default list. To get this list, you need to make a call to the endpoint returned in the url attribute.
Publication events counter.
0
The endpoint where this list of publications can be accessed using a GET method. /v1/vouchers/{voucher_code}/publications
"/v1/vouchers/WVPblOYX/publications?page=1&limit=10"
Stores a summary of redemptions that have been applied to the voucher.
Show child attributes
How many times a voucher can be redeemed. A null value means unlimited.
How many times a voucher has already been redeemed.
1
Total amount redeemed. Value is multiplied by 100 to precisely represent 2 decimal places. For example, $100 balance is written as 10000.
100000
Total loyalty points redeemed.
100000
The type of the object represented is by default list. To get this list, you need to make a call to the endpoint returned in the url attribute.
The endpoint where this list of redemptions can be accessed using a GET method. /v1/vouchers/{voucher_code}/redemptions
"/v1/vouchers/WVPblOYX/redemptions?page=1&limit=10"
Simplified campaign data.
Show child attributes
Campaign ID.
Campaign name.
Type of campaign.
Defines whether the campaign can be updated with new vouchers after campaign creation or if the campaign consists of standalone vouchers.
AUTO_UPDATE: the campaign is dynamic, i.e. vouchers will generate based on set criteriaSTATIC: vouchers need to be manually publishedSTANDALONE: campaign for single vouchersAUTO_UPDATE, STATIC, STANDALONE Flag indicating whether this voucher is a referral code; true for campaign type REFERRAL_PROGRAM.
Simplified campaign voucher data.
Show child attributes
Type of the voucher.
DISCOUNT_VOUCHER, LOYALTY_CARD, GIFT_VOUCHER Defines the redemption limits on vouchers.
Schema containing information about config used for voucher. Defines the code pattern (prefix, suffix, length, charset, etc).
Show child attributes
Number of characters in a generated code (excluding prefix and postfix).
Characters that can appear in the code.
A text appended before the code.
A text appended after the code.
A pattern for codes where hashes (#) will be replaced with random characters. Overrides length.
The initial count.
Defines the voucher discount type and details. It will not be returned at all or it will return a null for LOYALTY_CARD.
Show child attributes
Defines the type of the voucher.
AMOUNT Amount taken off the subtotal of a price. Value is multiplied by 100 to precisely represent 2 decimal places. For example, a $10 discount is written as 1000.
Maximum discount amount per order.
Defines how the discount is applied to the customer's order.
APPLY_TO_ORDER, APPLY_TO_ITEMS, APPLY_TO_ITEMS_PROPORTIONALLY, APPLY_TO_ITEMS_PROPORTIONALLY_BY_QUANTITY, APPLY_TO_ITEMS_BY_QUANTITY Flag indicating whether the discount was calculated using a formula.
Defines the voucher gift details. It will not be returned at all or it will return a null for LOYALTY_CARD.
Show child attributes
Total gift card income over the lifetime of the card. Value is multiplied by 100 to precisely represent 2 decimal places. For example, $10 amount is written as 1000.
Available funds. Value is multiplied by 100 to precisely represent 2 decimal places. For example, $10 amount is written as 1000.
Defines how the credits are applied to the customer's order.
APPLY_TO_ORDER, APPLY_TO_ITEMS Defines the voucher loyalty card details. It will not be returned at all or it will return a null for DISCOUNT_VOUCHER or GIFT_CARD.
Show child attributes
The initial number of points to assign to the loyalty card. This is the current loyalty card score i.e. the number of loyalty points on the card.
Defines the loyalty point expiration rule. This expiration rule applies when there are no expiration_rules defined for an earning rule.
Show child attributes
Type of period. Can be set for MONTH or FIXED_DAY_OF_YEAR. MONTH requires the period_value field. FIXED_DAY_OF_YEAR requires the fixed_month and fixed_day fields.
FIXED_DAY_OF_YEAR, MONTH Value of the period. Required for the period_type: MONTH.
Type of rounding of the expiration period. Optional for the period_type: MONTH.
END_OF_MONTH, END_OF_QUARTER, END_OF_HALF_YEAR, END_OF_YEAR, PARTICULAR_MONTH Value of rounding of the expiration period. Required for the rounding_type.
Determines the month when the points expire; 1 is January, 2 is February, and so on. Required for the period_type: FIXED_DAY_OF_YEAR.
1 <= x <= 12Determines the day of the month when the points expire. Required for the period_type: FIXED_DAY_OF_YEAR.
1 <= x <= 31Defines the referee reward and the way a referral is triggered. Context: REFERRAL_PROGRAM.
Show child attributes
Defines how a referral is triggered.
redemption, custom_event Defines the referee reward.
Show child attributes
Details of the resource from which the reward originates.
Show child attributes
Unique identifier of the reward source.
"camp_kdxp3vf1clQ9CFs1jpqv3tZe"
Name of the reward source.
Type of resource represented by the source of the reward.
CAMPAIGN Type of reward.
DISCOUNT_VOUCHER, LOYALTY_CARD, GIFT_VOUCHER Define the number of points to add to a loyalty card or credits to the balance on a gift card. In case of the gift card, the value is multiplied by 100 to precisely represent 2 decimal places. For example, $100 amount is written as 10000.
Indicates whether customers will be able to auto-join the campaign if any earning rule is fulfilled.
If this value is set to true, customers will be able to join the campaign only once. It is always false for standalone voucher campaigns and it cannot be changed in them. It is always true for loyalty campaigns.
Indicates whether the campaign is active.
The unique category ID that this campaign belongs to.
Unique category name.
Contains details about the category.
Show child attributes
Unique category ID assigned by Voucherify.
Category name.
Category hierarchy.
Timestamp representing the date and time when the category was created in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
The type of the object represented by the JSON. This object stores information about the category.
category Timestamp representing the date and time when the category was updated in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
The type of the stacking rule eligibility.
JOINT, EXCLUSIVE A set of custom key/value pairs that you can attach to a campaign. The metadata object stores all custom attributes assigned to the campaign.
Activation timestamp defines when the campaign starts to be active in ISO 8601 format. Campaign is inactive before this date.
"2022-09-20T00:00:00.000Z"
Expiration timestamp defines when the campaign expires in ISO 8601 format. Campaign is inactive after this date.
"2022-09-30T00:00:00.000Z"
An optional field to keep extra textual information about the campaign such as a campaign description and details.
Timestamp representing the date and time when the campaign was created. The value is shown in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
Timestamp representing the date and time when the campaign was updated in the ISO 8601 format.
"2024-01-01T11:11:11.111Z"
The type of the object represented by JSON. This object stores information about the campaign.
campaign Webhook accepted
Was this page helpful?