Supported webhook events
Below you will find information about the various events our webhooks service supports, and sample payloads with descriptions.
Adds a card
This event is fired when a customer links a card to their account.
Payload attributes
- Name
user_card_id- Type
- integer
- Description
The main associative ID for the record, registering the link between a card and a customer.
- Name
user- Type
- object
- Description
Information about the customer linked to the card.
- Name
card- Type
- object
- Description
Information about the card that was linked to the customer.
Payload
{
"user_card_id": 2746134,
"user": {
"user_id": 846134,
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
}
},
"card": {
"card_id": 8764351,
"cardType": {
"cardType_id": 1,
"name": "Branded cards"
},
"number": "9999001012345678",
"pin": "1234"
},
"date_created": 1778942855,
"date_updated": 1778942855,
"status": {
"status_id": 1,
"name": "Active"
}
}
Balance is updated
This event is fired any time a customer's balance is updated. This will include increases, decreases, or expiries against any one of a customer's balances.
Payload attributes
- Name
user- Type
- object
- Description
Information about the customer who's balance is changing.
- Name
balance- Type
- object
- Description
Includes the amount the balance of a particular currency is changing, and expiry information.
- Name
transaction_detail- Type
- object
- Description
Includes information about the transaction that was responsible for the change in the customer's balance.
Payload
{
"user": {
"user_id": 846134,
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
}
},
"balance": {
"amount": 44,
"currency": {
"currency_id": 2,
"name": "Coffee Points"
},
"expiring": [
{
"amount": 10,
"date": 1778978745
}
]
},
"transaction_detail": {
"transaction_id": 217435,
"receipt_id": 72841,
"vendor_perk": {
"vendor_perk_id": 28,
"name": "When completing a purchase"
},
"vendor_perk_redemption": null,
"currency": {
"currency_id": 2,
"name": "Coffee Points"
},
"amount": 44,
"transactionType": {
"transactionType_id": 3,
"name": "Awarded"
},
"transactionStatus": {
"transactionStatus_id": 4,
"name": "Complete"
},
"date_created": 1,
"date_updated": 1,
},
}
Leaves feedback
This event is fired when a customer leaves a feedback score against a transaction. This will typically include a 0-100 rating an an optional comment.
Payload attributes
- Name
user- Type
- object
- Description
Information about the customer linked to the card.
- Name
transaction_detail- Type
- object
- Description
Includes information about the transaction that was rated by the customer.
- Name
feedback- Type
- object
- Description
Includes information about the actual feedback left against the order.
Payload
{
"user": {
"user_id": 846134,
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
}
},
"transaction": {
"receipt_id": 217435,
"vendor": {
"vendor_id": 102712,
"master": {
"vendor_id": 102700,
"name": "Breakfast Bonanza"
},
"name": "Main Street",
"address": {
"street1": "123 Main Street",
"unit": null,
"city": "Ottawa",
"region": "Ontario",
"country": "Canada",
"postal": "k1Y4Y3"
},
"timezone": "America/Toronto",
"status": {
"status_id": 1,
"name": "Active"
}
},
"date_created": 1778979544,
"date_updated": 1778979544,
},
"feedback": {
"rating": 85,
"comment": "Service was fantastic. Would definitely return again."
}
}
Gift card transaction
This event fires after a customer loads or redeems a gift card.
Payload attributes
- Name
user- Type
- object
- Description
Information about the customer linked to the gift card.
- Name
vendor- Type
- object
- Description
Information about the store where the gift card was purchased.
- Name
receipt- Type
- object
- Description
Information about the gift card purchase order.
- Name
quickpay- Type
- object
- Description
Includes the amount loaded or redeemed as part of this gift card transaction.
Payload
{
"user": {
"user_id": 846134,
"identifier": "9999000112345678",
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
},
},
"vendor": {
"vendor_id": 102712,
"master": {
"vendor_id": 102700,
"name": "Breakfast Bonanza"
},
"name": "Main Street",
"address": {
"street1": "123 Main Street",
"unit": null,
"city": "Ottawa",
"region": "Ontario",
"country": "Canada",
"postal": "k1Y4Y3"
},
"timezone": "America/Toronto",
"status": {
"status_id": 1,
"name": "Active"
}
},
"receipt": {
"receipt_id": 847824,
"number": "INV-8921",
"receipt_date": 1778979544,
"subtotal": 50.00,
"total": 50.00,
"type": "Quickpay",
"date_created": 1778979544,
"date_updated": 1778979544,
},
"quickpay": {
"loaded": 50.00,
"redeemed": 0.00
}
}
Order is processed
This endpoint allows you to add a line item to an invoice. A line item must include an invoice ID, product ID, quantity, and amount.
Payload attributes
- Name
user- Type
- object
- Description
Information about the customer linked to the order.
- Name
vendor- Type
- object
- Description
Information about the store where the order was processed.
- Name
receipt- Type
- object
- Description
Information about the order.
- Name
loyalty- Type
- object
- Description
Information about the changes to the customer's loyalty balance as a result of the order.
Payload
{
"user": {
"user_id": 846134,
"identifier": "9999000112345678",
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
},
},
"vendor": {
"vendor_id": 102712,
"master": {
"vendor_id": 102700,
"name": "Breakfast Bonanza"
},
"name": "Main Street",
"address": {
"street1": "123 Main Street",
"unit": null,
"city": "Ottawa",
"region": "Ontario",
"country": "Canada",
"postal": "k1Y4Y3"
},
"timezone": "America/Toronto",
"status": {
"status_id": 1,
"name": "Active"
}
},
"receipt": {
"receipt_id": 847824,
"number": "INV-8921",
"receipt_date": 1778979544,
"payment_method": "Cash",
"subtotal": 24.99,
"total": 24.99,
"type": "Invoice",
"details": [
{
"catalog": {
"vendor_catalog_id": 227134,
"identifier": "SAM-0231",
"name": "Club Sandwich"
},
"quantity": 1,
"price": 24.99
},
{
"catalog": {
"vendor_catalog_id": 32918,
"identifier": "BEV-8731",
"name": "Lemonade - MD"
},
"quantity": 1,
"price": 5.00
}
{
"catalog": {
"vendor_catalog_id": 67461,
"identifier": "DIS-5344",
"name": "Free Medium Drink"
},
"quantity": 1,
"price": -5.00
}
],
"date_created": 1778979544,
"date_updated": 1778979544,
},
"loyalty": [
{
"reward": {
"vendor_perk_id": 7261,
"name": "When you complete a purchase",
"type": "Points per dollar",
"amount": 1
},
"redemption": null,
"currency": {
"currency_id": 2,
"code": null,
"name": "Points"
},
"earned": 24,
"redeemed": 0,
},
{
"reward": null,
"redemption": {
"vendor_perk_redemption_id": 37831,
"name": "Free Medium Drink",
"type": "Redemption",
"cost": 200,
"summary": "Free drink for 200 points",
"description": "Get any free medium drink for 200 points"
},
"currency": {
"currency_id": 2,
"code": null,
"name": "Points"
},
"earned": 0,
"redeemed": 200,
},
]
}
Password is reset
This event fires when a customer triggers the password reset process.
Payload attributes
- Name
user- Type
- object
- Description
Information about the customer who is resetting their password.
Payload
{
"user": {
"user_id": 73751,
"email_address": "john.smith@example.com",
"token": "ff617d6e5f4b3b2c1d0e9f8a7b606e3"
}
}
Profile is updated
This event is triggered whenever details on a customer's account are updated. This can include things like their name, email address, or metadata fields.
Payload attributes
- Name
user_id- Type
- integer
- Description
Unique identifier for the customer that was updated.
- Name
user_vendor_id- Type
- integer
- Description
A secondary associative identifier between a customer and a merchant. This value becomes useful in scenarios where a customer belongs to multiple merchants.
- Name
changes- Type
- object
- Description
Contains the list of changes that were applied to the customer's account as part of the update.
Payload
{
"user_id": 12746,
"user_vendor_id": 863153,
"changes": {
"first_name": {
"previous": "John",
"new": "Johnny"
},
"email_address": {
"previous": "john.smith@example.com",
"new": "johnny.smith@example.com"
}
}
}
Completes registration
This event is fired after a customer completes the registration process with a merchant.
Payload attributes
- Name
user_vendor_id- Type
- integer
- Description
A secondary associative identifier between a customer and a merchant. This value becomes useful in scenarios where a customer belongs to multiple merchants.
- Name
user- Type
- object
- Description
Information about the customer who is registering.
- Name
vendor- Type
- object
- Description
Information about the merchant the customer is registering with.
- Name
meta- Type
- array
- Description
Contains a list of "metadata" entries for the customer. Each entry will typically represent a single data point for the customer.
- Name
consent- Type
- object
- Description
Information about the kinds of marketing consent the user has agreed to at time of registration.
Payload
{
"user_vendor_id": 746153,
"user": {
"user_id": 56471,
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
},
},
"vendor": {
"vendor_id": 102700,
"name": "Breakfast Bonanza",
"timezone": "America/Toronto",
"status": {
"status_id": 1,
"name": "Active"
}
},
"meta": [
{
"user_metadata_id": 24351,
"field": {
"user_metadataField_id": 19,
"name": "Cedula"
},
"value": "111222333",
"date_created": 1778942855,
"date_updated": 1778942855
},
{
"user_metadata_id": 24352,
"field": {
"user_metadataField_id": 16,
"name": "Gender"
},
"value": "M",
"date_created": 1778942855,
"date_updated": 1778942855
}
],
"consent": {
"email": true,
"sms": false
},
"date_created": 1778942855,
"date_updated": 1778942855,
"status": {
"status_id": 1,
"name": "Active"
}
}
Card is removed
This event is fired when a customer deletes a card from their account.
Payload attributes
- Name
user- Type
- object
- Description
Information about the customer linked to the card.
- Name
card- Type
- object
- Description
Information about the card that was linked to the customer.
Payload
{
"user": {
"user_id": 846134,
"first_name": "John",
"last_name": "Smith",
"email_address": "john.smith@example.com",
"birthdate": 958582007,
"status": {
"status_id": 1,
"name": "Active"
}
},
"card": {
"card_id": 8764351,
"cardType": {
"cardType_id": 1,
"name": "Branded cards"
},
"number": "9999001012345678",
"pin": "1234"
},
"date_created": 1778942855,
"date_updated": 1778942855,
"status": {
"status_id": 4,
"name": "Deleted"
}
}
Transaction is voided
This event is fired whenever a void occurs. Voids can be applied against whole orders (receipts), or the results of orders (transaction_details).
Payload attributes
- Name
transaction_detail_id- Type
- integer
- Description
Internal ID of an order result. These are responsible for modifying a customer's balance.
- Name
receipt_id- Type
- integer
- Description
Internal ID for an order.
- Name
receipt_number- Type
- string
- Description
POS ID for an order.
Payload
{
"transaction_detail_id": 1471648,
"receipt_id": 18746144,
"receipt_number": "INV-6531"
}