Skip to main content

Webhook Events Reference

OpenTiendas webhooks notify external systems in real time when key events occur in your e-commerce. This section lists all currently available events, along with sample payloads and field reference.

note
  • Events are not guaranteed to be delivered in strict chronological order. Consumers should rely on the resource state included in the payload rather than the timing of event delivery.
  • Each event represents a state transition or a relevant action within the system.

Webhook Payload Structure

All webhook events share a common envelope:

FieldTypeDescription
event_idstringUnique identifier (UUID v4) of the event (used for idempotency).
typestringEvent type (e.g., review.created).
created_atstringEvent creation timestamp (ISO 8601).
dataobjectResource payload (Review, Order, etc.).

Available Events

EventTriggered When
order.canceledAn order is canceled.
order.createdA new order is created.
order.fulfilledAn order is fully fulfilled (shipped or ready for pickup).
order.paidAn order is paid.
review.createdA new review is created.
review.publishedA review is published.

Event: order.canceled

Description:
Emitted when an order transitions to the cancelled state.

note
  • The cancelled state is terminal; this event is emitted once per order.
  • Once an order is cancelled, it cannot be modified or processed further.
  • An order can only be cancelled if it has not been shipped and no payments have been recorded in the system.
Sample Payload (JSON)
{
"id": "b7e6a1c2-3f4d-4e2a-9b1c-8f7e2d1a9c3e",
"type": "order.canceled",
"created_at": "2026-03-16T11:12:33Z",
"data": {
"id": 2026,
"payment_status": "unpaid",
"warehouse_release_status": "not_released",
"fulfillment_status": "unfulfilled",
"created_at": "2026-03-30T15:47:41Z",
"paid_at": null,
"fulfilled_at": null,
"canceled_at": "2026-03-31T09:15:00Z",
"delivery_method": "shipment",
"locale": "en-US",
"payment_method": "credit_card",
"payment_gateway": "stripe",
"total": {
"tax": {
"amount": "8.39",
"currency": "EUR"
},
"net": {
"amount": "39.95",
"currency": "EUR"
},
"gross": {
"amount": "48.34",
"currency": "EUR"
}
},
"shipping": {
"tax": {
"amount": "0.84",
"currency": "EUR"
},
"net": {
"amount": "4.16",
"currency": "EUR"
},
"gross": {
"amount": "5.00",
"currency": "EUR"
}
},
"fees": {
"tax": {
"amount": "0.00",
"currency": "EUR"
},
"net": {
"amount": "0.00",
"currency": "EUR"
},
"gross": {
"amount": "0.00",
"currency": "EUR"
}
},
"line_items": [
{
"id": 101,
"product_id": 501,
"variant_id": 1001,
"sku": "OXFORD-BLUE-M",
"ean": "1234567890123",
"display_name": "Oxford Shirt",
"tax_rate": "0.21",
"quantity": 1,
"unit_price": {
"list_price": {
"gross": {
"amount": "39.95",
"currency": "EUR"
}
},
"final_price": {
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
},
"discounts_applied": [],
"additional_services": [],
"total": {
"tax": {
"amount": "6.93",
"currency": "EUR"
},
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
}
],
"email": "customer@example.com",
"customer": {
"id": 301,
"is_registered": true,
"email": "customer@example.com",
"first_name": "Alex",
"last_name": "Smith",
"full_name": "Alex Smith",
"phone": null,
"preferred_locale": "en-US",
"created_at": "2026-03-30T13:51:57Z",
"is_b2b": false
},
"billing_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
},
"shipping_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
}
}
}

Field Reference

The following fields are contained within the data object of the webhook payload.

FieldTypeDescriptionPossible Values / Format
idintegerUnique identifier of the order.
payment_statusstringPayment status of the order.e.g., paid, pending, failed
warehouse_release_statusstringWarehouse release status.e.g., released, pending
fulfillment_statusstringFulfillment status of the order.unfulfilled, partially_fulfilled, fulfilled
created_atstringOrder creation timestamp.ISO 8601 (e.g., 2026-03-30T15:47:41Z)
paid_atstringTimestamp when the order was paid.ISO 8601 or null
fulfilled_atstringTimestamp when the order was fulfilled.ISO 8601 or null
canceled_atstringTimestamp when the order was canceled.ISO 8601 or null
delivery_methodstringDelivery method for the order.shipment, store_pick_up
localestringLocale of the order.e.g., en-US, es-ES
payment_methodstringPayment method used.e.g., credit_card, bank_transfer
payment_gatewaystringPayment gateway used.e.g., stripe, manual
totalobjectTotal amounts for the order (tax, net, gross).See below
shippingobjectShipping amounts for the order (tax, net, gross).See below
feesobjectFee amounts for the order (tax, net, gross).See below
line_itemsarrayList of order line items.Array of objects (see below)
emailstringCustomer email address.
customerobjectCustomer information.See below
billing_addressobjectBilling address information.See below
shipping_addressobjectShipping address information.See below

Nested Objects

total, shipping, fees

FieldTypeDescription
taxobjectTax amount and currency
netobjectNet amount and currency
grossobjectGross amount and currency

Each of these contains:

  • amount: string (e.g., "8.39")
  • currency: string (e.g., "EUR")

line_items

FieldTypeDescription
idintegerUnique identifier for the line item
product_idintegerProduct ID
variant_idintegerVariant ID
skustringSKU code
eanstringEAN code
display_namestringProduct display name
tax_ratestringTax rate (e.g., "0.21")
quantityintegerQuantity ordered
unit_priceobjectUnit price details (see below)
discounts_appliedarrayApplied discounts (if any)
additional_servicesarrayAdditional services (if any)
totalobjectLine item totals (tax, net, gross)

unit_price

FieldTypeDescription
list_priceobjectList price (gross)
final_priceobjectFinal price (net, gross)

discounts_applied

FieldTypeDescription
typestringDiscount type
amountobjectDiscount amount/currency
descriptionstringDiscount description

customer

FieldTypeDescription
idintegerCustomer ID
is_registeredbooleanWhether the customer is registered
emailstringCustomer email
first_namestringFirst name
last_namestringLast name
full_namestringFull name
phonestringPhone number
preferred_localestringPreferred locale
created_atstringCustomer creation timestamp
is_b2bbooleanIs business customer

billing_address / shipping_address

FieldTypeDescription
first_namestringFirst name
last_namestringLast name
phonestringPhone number
companystringCompany name
street_addressstringStreet address
postal_codestringPostal code
country_codestringCountry code (ISO)
regionstringRegion/State
citystringCity

Event: order.created

Description:
Emitted when a new order is created in the system.

This occurs when a customer attempts to place an order after selecting a payment method and proceeding through checkout, or when an order is created manually by store staff from the administration panel.

The event contains the order data available at that moment, including items, prices, totals, customer information, addresses, and the selected payment method.

note
  • This event is emitted once per order (order_id).
  • It represents a purchase attempt recorded as an order. Creation of the order does not guarantee that payment has been successfully completed.
  • A customer may generate multiple orders if the payment fails, the checkout is abandoned, or the purchase is attempted again.
  • Each new attempt creates a new order and triggers a new order.created event.
Sample Payload (JSON)
{
"id": "b7e6a1c2-3f4d-4e2a-9b1c-8f7e2d1a9c3e",
"type": "order.created",
"created_at": "2026-03-16T11:12:33Z",
"data": {
"id": 2026,
"payment_status": "paid",
"warehouse_release_status": "released",
"fulfillment_status": "fulfilled",
"created_at": "2026-03-30T15:47:41Z",
"paid_at": "2026-03-30T15:48:21Z",
"fulfilled_at": "2026-03-30T15:49:03Z",
"canceled_at": null,
"delivery_method": "shipment",
"locale": "en-US",
"payment_method": "credit_card",
"payment_gateway": "stripe",
"total": {
"tax": {
"amount": "8.39",
"currency": "EUR"
},
"net": {
"amount": "39.95",
"currency": "EUR"
},
"gross": {
"amount": "48.34",
"currency": "EUR"
}
},
"shipping": {
"tax": {
"amount": "0.84",
"currency": "EUR"
},
"net": {
"amount": "4.16",
"currency": "EUR"
},
"gross": {
"amount": "5.00",
"currency": "EUR"
}
},
"fees": {
"tax": {
"amount": "0.00",
"currency": "EUR"
},
"net": {
"amount": "0.00",
"currency": "EUR"
},
"gross": {
"amount": "0.00",
"currency": "EUR"
}
},
"line_items": [
{
"id": 101,
"product_id": 501,
"variant_id": 1001,
"sku": "OXFORD-BLUE-M",
"ean": "1234567890123",
"display_name": "Oxford Shirt",
"tax_rate": "0.21",
"quantity": 1,
"unit_price": {
"list_price": {
"gross": {
"amount": "39.95",
"currency": "EUR"
}
},
"final_price": {
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
},
"discounts_applied": [],
"additional_services": [],
"total": {
"tax": {
"amount": "6.93",
"currency": "EUR"
},
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
}
],
"email": "customer@example.com",
"customer": {
"id": 301,
"is_registered": true,
"email": "customer@example.com",
"first_name": "Alex",
"last_name": "Smith",
"full_name": "Alex Smith",
"phone": null,
"preferred_locale": "en-US",
"created_at": "2026-03-30T13:51:57Z",
"is_b2b": false
},
"billing_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
},
"shipping_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
}
}
}

Field Reference

The following fields are contained within the data object of the webhook payload.

FieldTypeDescriptionPossible Values / Format
idintegerUnique identifier of the order.
payment_statusstringPayment status of the order.e.g., paid, pending, failed
warehouse_release_statusstringWarehouse release status.e.g., released, pending
fulfillment_statusstringFulfillment status of the order.unfulfilled, partially_fulfilled, fulfilled
created_atstringOrder creation timestamp.ISO 8601 (e.g., 2026-03-30T15:47:41Z)
paid_atstringTimestamp when the order was paid.ISO 8601 or null
fulfilled_atstringTimestamp when the order was fulfilled.ISO 8601 or null
canceled_atstringTimestamp when the order was canceled.ISO 8601 or null
delivery_methodstringDelivery method for the order.shipment, store_pick_up
localestringLocale of the order.e.g., en-US, es-ES
payment_methodstringPayment method used.e.g., credit_card, bank_transfer
payment_gatewaystringPayment gateway used.e.g., stripe, manual
totalobjectTotal amounts for the order (tax, net, gross).See below
shippingobjectShipping amounts for the order (tax, net, gross).See below
feesobjectFee amounts for the order (tax, net, gross).See below
line_itemsarrayList of order line items.Array of objects (see below)
emailstringCustomer email address.
customerobjectCustomer information.See below
billing_addressobjectBilling address information.See below
shipping_addressobjectShipping address information.See below

Nested Objects

total, shipping, fees

FieldTypeDescription
taxobjectTax amount and currency
netobjectNet amount and currency
grossobjectGross amount and currency

Each of these contains:

  • amount: string (e.g., "8.39")
  • currency: string (e.g., "EUR")

line_items

FieldTypeDescription
idintegerUnique identifier for the line item
product_idintegerProduct ID
variant_idintegerVariant ID
skustringSKU code
eanstringEAN code
display_namestringProduct display name
tax_ratestringTax rate (e.g., "0.21")
quantityintegerQuantity ordered
unit_priceobjectUnit price details (see below)
discounts_appliedarrayApplied discounts (if any)
additional_servicesarrayAdditional services (if any)
totalobjectLine item totals (tax, net, gross)

unit_price

FieldTypeDescription
list_priceobjectList price (gross)
final_priceobjectFinal price (net, gross)

discounts_applied

FieldTypeDescription
typestringDiscount type
amountobjectDiscount amount/currency
descriptionstringDiscount description

customer

FieldTypeDescription
idintegerCustomer ID
is_registeredbooleanWhether the customer is registered
emailstringCustomer email
first_namestringFirst name
last_namestringLast name
full_namestringFull name
phonestringPhone number
preferred_localestringPreferred locale
created_atstringCustomer creation timestamp
is_b2bbooleanIs business customer

billing_address / shipping_address

FieldTypeDescription
first_namestringFirst name
last_namestringLast name
phonestringPhone number
companystringCompany name
street_addressstringStreet address
postal_codestringPostal code
country_codestringCountry code (ISO)
regionstringRegion/State
citystringCity

Event: order.fulfilled

Description:
Emitted when the order reaches the fulfilled state, indicating that all items in the order have been fully fulfilled.

This means the items have either been shipped to the customer or made available for in-store pickup.

note
  • This event is emitted once per order.
  • The event indicates that all items in the order have been fulfilled (no partial fulfillment).
  • It does not imply that the order has been delivered to the customer.
Sample Payload (JSON)
{
"id": "b7e6a1c2-3f4d-4e2a-9b1c-8f7e2d1a9c3e",
"type": "order.fulfilled",
"created_at": "2026-03-31T10:00:00Z",
"data": {
"id": 2026,
"payment_status": "paid",
"warehouse_release_status": "released",
"fulfillment_status": "fulfilled",
"created_at": "2026-03-30T15:47:41Z",
"paid_at": "2026-03-30T15:48:21Z",
"fulfilled_at": "2026-03-31T09:30:00Z",
"canceled_at": null,
"delivery_method": "shipment",
"locale": "en-US",
"payment_method": "credit_card",
"payment_gateway": "stripe",
"total": {
"tax": {
"amount": "8.39",
"currency": "EUR"
},
"net": {
"amount": "39.95",
"currency": "EUR"
},
"gross": {
"amount": "48.34",
"currency": "EUR"
}
},
"shipping": {
"tax": {
"amount": "0.84",
"currency": "EUR"
},
"net": {
"amount": "4.16",
"currency": "EUR"
},
"gross": {
"amount": "5.00",
"currency": "EUR"
}
},
"fees": {
"tax": {
"amount": "0.00",
"currency": "EUR"
},
"net": {
"amount": "0.00",
"currency": "EUR"
},
"gross": {
"amount": "0.00",
"currency": "EUR"
}
},
"line_items": [
{
"id": 101,
"product_id": 501,
"variant_id": 1001,
"sku": "OXFORD-BLUE-M",
"ean": "1234567890123",
"display_name": "Oxford Shirt",
"tax_rate": "0.21",
"quantity": 1,
"unit_price": {
"list_price": {
"gross": {
"amount": "39.95",
"currency": "EUR"
}
},
"final_price": {
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
},
"discounts_applied": [],
"additional_services": [],
"total": {
"tax": {
"amount": "6.93",
"currency": "EUR"
},
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
}
],
"email": "customer@example.com",
"customer": {
"id": 301,
"is_registered": true,
"email": "customer@example.com",
"first_name": "Alex",
"last_name": "Smith",
"full_name": "Alex Smith",
"phone": null,
"preferred_locale": "en-US",
"created_at": "2026-03-30T13:51:57Z",
"is_b2b": false
},
"billing_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
},
"shipping_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
}
}
}

Field Reference

The following fields are contained within the data object of the webhook payload.

FieldTypeDescriptionPossible Values / Format
idintegerUnique identifier of the order.
payment_statusstringPayment status of the order.e.g., paid, pending, failed
warehouse_release_statusstringWarehouse release status.e.g., released, pending
fulfillment_statusstringFulfillment status of the order.unfulfilled, partially_fulfilled, fulfilled
created_atstringOrder creation timestamp.ISO 8601 (e.g., 2026-03-30T15:47:41Z)
paid_atstringTimestamp when the order was paid.ISO 8601 or null
fulfilled_atstringTimestamp when the order was fulfilled.ISO 8601 or null
canceled_atstringTimestamp when the order was canceled.ISO 8601 or null
delivery_methodstringDelivery method for the order.shipment, store_pick_up
localestringLocale of the order.e.g., en-US, es-ES
payment_methodstringPayment method used.e.g., credit_card, bank_transfer
payment_gatewaystringPayment gateway used.e.g., stripe, manual
totalobjectTotal amounts for the order (tax, net, gross).See below
shippingobjectShipping amounts for the order (tax, net, gross).See below
feesobjectFee amounts for the order (tax, net, gross).See below
line_itemsarrayList of order line items.Array of objects (see below)
emailstringCustomer email address.
customerobjectCustomer information.See below
billing_addressobjectBilling address information.See below
shipping_addressobjectShipping address information.See below

Nested Objects

total, shipping, fees

FieldTypeDescription
taxobjectTax amount and currency
netobjectNet amount and currency
grossobjectGross amount and currency

Each of these contains:

  • amount: string (e.g., "8.39")
  • currency: string (e.g., "EUR")

line_items

FieldTypeDescription
idintegerUnique identifier for the line item
product_idintegerProduct ID
variant_idintegerVariant ID
skustringSKU code
eanstringEAN code
display_namestringProduct display name
tax_ratestringTax rate (e.g., "0.21")
quantityintegerQuantity ordered
unit_priceobjectUnit price details (see below)
discounts_appliedarrayApplied discounts (if any)
additional_servicesarrayAdditional services (if any)
totalobjectLine item totals (tax, net, gross)

unit_price

FieldTypeDescription
list_priceobjectList price (gross)
final_priceobjectFinal price (net, gross)

discounts_applied

FieldTypeDescription
typestringDiscount type
amountobjectDiscount amount/currency
descriptionstringDiscount description

customer

FieldTypeDescription
idintegerCustomer ID
is_registeredbooleanWhether the customer is registered
emailstringCustomer email
first_namestringFirst name
last_namestringLast name
full_namestringFull name
phonestringPhone number
preferred_localestringPreferred locale
created_atstringCustomer creation timestamp
is_b2bbooleanIs business customer

billing_address / shipping_address

FieldTypeDescription
first_namestringFirst name
last_namestringLast name
phonestringPhone number
companystringCompany name
street_addressstringStreet address
postal_codestringPostal code
country_codestringCountry code (ISO)
regionstringRegion/State
citystringCity

Event: order.paid

Description:
Emitted when the order reaches the paid state, indicating that the full payment amount for the order has been confirmed.

note
  • This event is emitted once per order.
  • The payment covers the full order total.
  • It applies to both automatic payments processed by payment gateways (such as Stripe, Redsys, etc.) and payments manually confirmed by store staff (for example bank transfers).
  • The event may occur at the same time as order.created, or minutes, hours, or even days later, depending on the payment method.
  • This event indicates only that the order has been paid. It does not imply that the order has been prepared, shipped, or delivered.
Sample Payload (JSON)
{
"id": "b7e6a1c2-3f4d-4e2a-9b1c-8f7e2d1a9c3e",
"type": "order.paid",
"created_at": "2026-03-30T15:48:22Z",
"data": {
"id": 2026,
"payment_status": "paid",
"warehouse_release_status": "not_released",
"fulfillment_status": "unfulfilled",
"created_at": "2026-03-30T15:47:41Z",
"paid_at": "2026-03-30T15:48:21Z",
"fulfilled_at": null,
"canceled_at": null,
"delivery_method": "shipment",
"locale": "en-US",
"payment_method": "credit_card",
"payment_gateway": "stripe",
"total": {
"tax": {
"amount": "8.39",
"currency": "EUR"
},
"net": {
"amount": "39.95",
"currency": "EUR"
},
"gross": {
"amount": "48.34",
"currency": "EUR"
}
},
"shipping": {
"tax": {
"amount": "0.84",
"currency": "EUR"
},
"net": {
"amount": "4.16",
"currency": "EUR"
},
"gross": {
"amount": "5.00",
"currency": "EUR"
}
},
"fees": {
"tax": {
"amount": "0.00",
"currency": "EUR"
},
"net": {
"amount": "0.00",
"currency": "EUR"
},
"gross": {
"amount": "0.00",
"currency": "EUR"
}
},
"line_items": [
{
"id": 101,
"product_id": 501,
"variant_id": 1001,
"sku": "OXFORD-BLUE-M",
"ean": "1234567890123",
"display_name": "Oxford Shirt",
"tax_rate": "0.21",
"quantity": 1,
"unit_price": {
"list_price": {
"gross": {
"amount": "39.95",
"currency": "EUR"
}
},
"final_price": {
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
},
"discounts_applied": [],
"additional_services": [],
"total": {
"tax": {
"amount": "6.93",
"currency": "EUR"
},
"net": {
"amount": "33.02",
"currency": "EUR"
},
"gross": {
"amount": "39.95",
"currency": "EUR"
}
}
}
],
"email": "customer@example.com",
"customer": {
"id": 301,
"is_registered": true,
"email": "customer@example.com",
"first_name": "Alex",
"last_name": "Smith",
"full_name": "Alex Smith",
"phone": null,
"preferred_locale": "en-US",
"created_at": "2026-03-30T13:51:57Z",
"is_b2b": false
},
"billing_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
},
"shipping_address": {
"first_name": "Alex",
"last_name": "Smith",
"phone": "555-123-4567",
"company": "",
"street_address": "123 Main Street, Suite 400",
"postal_code": "10001",
"country_code": "US",
"region": "New York",
"city": "New York"
}
}
}

Field Reference

The following fields are contained within the data object of the webhook payload.

FieldTypeDescriptionPossible Values / Format
idintegerUnique identifier of the order.
payment_statusstringPayment status of the order.e.g., paid, pending, failed
warehouse_release_statusstringWarehouse release status.e.g., released, pending
fulfillment_statusstringFulfillment status of the order.unfulfilled, partially_fulfilled, fulfilled
created_atstringOrder creation timestamp.ISO 8601 (e.g., 2026-03-30T15:47:41Z)
paid_atstringTimestamp when the order was paid.ISO 8601 or null
fulfilled_atstringTimestamp when the order was fulfilled.ISO 8601 or null
canceled_atstringTimestamp when the order was canceled.ISO 8601 or null
delivery_methodstringDelivery method for the order.shipment, store_pick_up
localestringLocale of the order.e.g., en-US, es-ES
payment_methodstringPayment method used.e.g., credit_card, bank_transfer
payment_gatewaystringPayment gateway used.e.g., stripe, manual
totalobjectTotal amounts for the order (tax, net, gross).See below
shippingobjectShipping amounts for the order (tax, net, gross).See below
feesobjectFee amounts for the order (tax, net, gross).See below
line_itemsarrayList of order line items.Array of objects (see below)
emailstringCustomer email address.
customerobjectCustomer information.See below
billing_addressobjectBilling address information.See below
shipping_addressobjectShipping address information.See below

Nested Objects

total, shipping, fees

FieldTypeDescription
taxobjectTax amount and currency
netobjectNet amount and currency
grossobjectGross amount and currency

Each of these contains:

  • amount: string (e.g., "8.39")
  • currency: string (e.g., "EUR")

line_items

FieldTypeDescription
idintegerUnique identifier for the line item
product_idintegerProduct ID
variant_idintegerVariant ID
skustringSKU code
eanstringEAN code
display_namestringProduct display name
tax_ratestringTax rate (e.g., "0.21")
quantityintegerQuantity ordered
unit_priceobjectUnit price details (see below)
discounts_appliedarrayApplied discounts (if any)
additional_servicesarrayAdditional services (if any)
totalobjectLine item totals (tax, net, gross)

unit_price

FieldTypeDescription
list_priceobjectList price (gross)
final_priceobjectFinal price (net, gross)

discounts_applied

FieldTypeDescription
typestringDiscount type
amountobjectDiscount amount/currency
descriptionstringDiscount description

customer

FieldTypeDescription
idintegerCustomer ID
is_registeredbooleanWhether the customer is registered
emailstringCustomer email
first_namestringFirst name
last_namestringLast name
full_namestringFull name
phonestringPhone number
preferred_localestringPreferred locale
created_atstringCustomer creation timestamp
is_b2bbooleanIs business customer

billing_address / shipping_address

FieldTypeDescription
first_namestringFirst name
last_namestringLast name
phonestringPhone number
companystringCompany name
street_addressstringStreet address
postal_codestringPostal code
country_codestringCountry code (ISO)
regionstringRegion/State
citystringCity

Event: review.created

Description:
Sent when a new review is created for the store or for a product (product with or without variants or bundle product). This event contains the review's full content, including rating and user information.

Sample Payload (JSON)
{
"event_id": "550e8400-e29b-41d4-a716-446655440000",
"type": "review.created",
"created_at": "2026-03-16T10:12:33Z",
"data": {
"id": "78456",
"status": "unpublished",
"type": "product",
"language": "es-ES",
"product_id": "7890",
"product_name": "Urban Sneakers 2025",
"variant_id": "5678",
"variant_name": "Black - Size 42",
"rating": 5,
"content": "These sneakers exceeded my expectations! The quality is top-notch, and the modern design fits perfectly with any outfit. I highly recommend them to anyone looking for comfort and style. Delivery was fast, and the packaging was excellent.",
"created_at": "2025-06-02T14:30:15Z",
"reviewer_name": "Maria Smith",
"reviewer_email": "maria.smith@example.com"
}
}
Field Reference

The following fields are contained within the data object of the webhook payload.

FieldTypeDescriptionPossible Values / Format
idstringUnique identifier of the review.
statusstringStatus of the review."published" or "unpublished"
typestringType of review."product" or "store"
languagestringLanguage code of the review.ISO 639-1 / ISO 3166 (e.g. es-ES)
product_idstringIdentifier of the reviewed product (if applicable).
product_namestringName of the reviewed product (if applicable).In the language of the review
variant_idstringIdentifier of the variant (if applicable).Only for multiple-type products
variant_namestringName of the variant (if applicable).In the language of the review
ratingintUser rating of the review.1-5
contentstringContent of the review.
created_atstringCreation date/time of the review.ISO 8601 (e.g. 2025-04-03T09:05:07Z)
reviewer_namestringName of the reviewer.
reviewer_emailstringEmail of the reviewer.

Event: review.published

Description:
Triggered when a review is published and becomes publicly visible. This event includes the full review content.

Sample Payload (JSON)
{
"event_id": "550e8400-e29b-41d4-a716-446655440000",
"type": "review.published",
"created_at": "2026-03-16T11:12:33Z",
"data": {
"id": "78456",
"status": "published",
"type": "product",
"language": "es-ES",
"product_id": "7890",
"product_name": "Urban Sneakers 2025",
"variant_id": "5678",
"variant_name": "Black - Size 42",
"rating": 5,
"content": "These sneakers exceeded my expectations! The quality is top-notch, and the modern design fits perfectly with any outfit. I highly recommend them to anyone looking for comfort and style. Delivery was fast, and the packaging was excellent.",
"created_at": "2025-06-02T14:30:15Z",
"reviewer_name": "Maria Smith",
"reviewer_email": "maria.smith@example.com"
}
}

Field Reference

The following fields are contained within the data object of the webhook payload.

FieldTypeDescriptionPossible Values / Format
idstringUnique identifier of the review.
statusstringStatus of the review."published" or "unpublished"
typestringType of review."product" or "store"
languagestringLanguage code of the review.ISO 639-1 / ISO 3166 (e.g. es-ES)
product_idstringIdentifier of the reviewed product (if applicable).
product_namestringName of the reviewed product (if applicable).In the language of the review
variant_idstringIdentifier of the variant (if applicable).Only for product with variants
variant_namestringName of the variant (if applicable).In the language of the review
ratingintUser rating of the review.1-5
contentstringContent of the review.
created_atstringCreation date/time of the review.ISO 8601 (e.g. 2025-04-03T10:15:30Z)
reviewer_namestringName of the reviewer.
reviewer_emailstringEmail of the reviewer.