Webhooks - Complete Field Reference
A comprehensive reference of every outbound webhook Neuro can fire, listing every field in every payload.
Last updated 6 days ago
1. Webhook Events Overview
Item limits per event: Order events send up to 150 items per payload. Product events send up to 250 items per payload. If more items exist, multiple webhook calls are made.
2. orders.received
Fired when a new order is imported from a channel into Neuro.
Payload: Order
{
"webhook_id": "a1b2c3d4-0000-0000-0000-000000000001",
"order_id": "f7e6d5c4-1111-2222-3333-444444444444",
"channel_id": "c1d2e3f4-aaaa-bbbb-cccc-dddddddddddd",
"channel_alt_id": "ALT-12345",
"channel_name": "My Shopify Store",
"channel_type": "shopify",
"store_id": "s1t2o3r4-eeee-ffff-0000-111111111111",
"remote_id": "5678901234",
"remote_status": "Unshipped",
"status": "Unshipped",
"customer": {
"id": 12345,
"customer_uuid": "cust-uuid-0001",
"company_id": 1,
"name": "Jane Smith",
"email": "jane.smith@example.com",
"created_at": "2025-06-10T08:00:00.000000Z",
"updated_at": "2026-01-15T14:32:00.000000Z"
},
"shipping_method": "Standard Shipping",
"shipping_address": {
"id": "addr-uuid-ship-001",
"name": "Jane Smith",
"company_name": "Acme Ltd",
"address_line_one": "123 High Street",
"address_line_two": "Floor 2",
"address_line_three": "",
"long_address": "123 High Street, Floor 2",
"county": "Greater London",
"city": "London",
"country_iso_code": "GB",
"zip": "EC1A 1BB",
"phone": "+441234567890"
},
"invoice_address": {
"id": "addr-uuid-inv-001",
"name": "Jane Smith",
"company_name": "Acme Ltd",
"address_line_one": "123 High Street",
"address_line_two": "",
"address_line_three": "",
"long_address": "123 High Street",
"county": "Greater London",
"city": "London",
"country_iso_code": "GB",
"zip": "EC1A 1BB",
"phone": "+441234567890"
},
"fulfillment": null,
"return": null,
"payment_method": "shopify_payments",
"send_via_webhook": true,
"payment_status": "paid",
"payment_details": {
"vat_id": "",
"vat_type": null,
"tax_rate": "20",
"tax_total": "8.33",
"shipping_total": "4.99",
"discount_total": "0",
"discount_total_exc_tax": "0",
"order_subtotal": "41.65",
"order_subtotal_exc_tax": "33.32",
"order_total": "46.64",
"payment_method": "shopify_payments",
"payment_ref": "ch_3ABC123",
"payment_currency": "GBP",
"coupon_code": "",
"coupon_total": "0",
"coupon_total_exc_tax": "0"
},
"system_notes": "",
"delivery_notes": "Please leave at the door",
"customer_comments": "",
"gift_note": "",
"channel_specific": {
"shipping_code": "shopify-Standard Shipping-4.99",
"tags": ["VIP", "wholesale"],
"note_attributes": [
{ "name": "gift_message", "value": "Happy Birthday!" }
]
},
"order_access_url": "https://myshop.myshopify.com/admin/orders/5678901234",
"order_date": "2026-01-15T14:32:00.000000Z",
"order_import_date": "2026-01-15T14:33:12.000000Z",
"total_order_item_quantity": 2,
"total_order_item_quantity_inc_kits": 4,
"primary_reference_id": null,
"order_lines": [
{
"id": "item-uuid-0001",
"remote_id": "li_123456",
"sku": "WIDGET-BLU-M",
"channel_product_id": "cp-uuid-0001",
"master_product_id": "mp-uuid-0001",
"matched_sku": "WIDGET-BLU-M",
"quantity": 1,
"refunded_quantity": 0,
"name": "Blue Widget (Medium)",
"unit_price": "20.83",
"unit_price_exc_tax": "16.66",
"unit_discount": "0.00",
"total_discount": "0.00",
"unit_tax_rate": "20.02",
"unit_tax_value": "4.17",
"total_tax_value": "4.17",
"total_price": "20.83",
"is_tax_included": true,
"options": null,
"image_url": "https://cdn.example.com/widget-blue.jpg",
"file_url": null,
"notes": null
},
{
"id": "item-uuid-0002",
"remote_id": "li_123457",
"sku": "KIT-STARTER",
"channel_product_id": "cp-uuid-0002",
"master_product_id": "mp-uuid-0002",
"matched_sku": "KIT-STARTER",
"quantity": 1,
"refunded_quantity": 0,
"name": "Starter Kit",
"unit_price": "20.82",
"unit_price_exc_tax": "16.66",
"unit_discount": "0.00",
"total_discount": "0.00",
"unit_tax_rate": "19.93",
"unit_tax_value": "4.16",
"total_tax_value": "4.16",
"total_price": "20.82",
"is_tax_included": true,
"options": null,
"image_url": "https://cdn.example.com/kit-starter.jpg",
"file_url": null,
"notes": null,
"kit": [
{ "quantity": 1, "sku": "WIDGET-RED-S", "name": "Red Widget (Small)" },
{ "quantity": 2, "sku": "WIDGET-GRN-S", "name": "Green Widget (Small)" }
]
}
],
"md5_hash": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6"
}
Order Field Reference
3. orders.updated
Fired when an existing order is updated (status change, fulfillment added, etc.).
Payload: Identical structure to orders.received.
The payload always sends the full current state of the order, not a diff. The webhook_id will be different from the original received webhook.
4. orders.on_hold
Fired when an order is placed on hold.
Payload: Identical structure to orders.received.
5. orders.excluded
Fired when an order is excluded from processing (e.g. via order rules).
Payload: Identical structure to orders.received.
Note: For orders.received, orders.route_to_webhook, and orders.excluded, fully refunded line items are excluded from order_lines.
6. orders.route_to_webhook
Fired when an order is routed to a specific webhook endpoint via order routing rules.
Payload: Identical structure to orders.received.
7. confirmation.orders.received
Fired as a confirmation that an order has been received. Used for acknowledgement workflows.
Payload: Identical structure to orders.received.
8. fulfillments.created
Fired when a new fulfillment is created for an order.
Payload: Fulfillment
{
"id": "ff-uuid-0001",
"order_id": "f7e6d5c4-1111-2222-3333-444444444444",
"order_primary_reference_id": null,
"order_remote_id": "5678901234",
"order_remote_alt_id": "ALT-12345",
"courier": {
"id": "cc-uuid-0001",
"name": "Royal Mail",
"custom_name": "RM Tracked 24"
},
"shipping_method": "Royal Mail Tracked 24",
"shipping_tracking_code": "JD012345678GB",
"tracking_url": "https://www.royalmail.com/track-your-item#/tracking-results/JD012345678GB",
"fulfillment_date": "2026-02-18 00:05:16",
"sync_status": 2,
"items": [
{ "sku": "WIDGET-BLU-M", "quantity": 1, "sales_channel_item_id": "5468632165489" }
],
"order_items": [
{
"remote_id": "li_123456",
"sku": "WIDGET-BLU-M",
"quantity": 1
}
],
"order": {
"order_id": "f7e6d5c4-1111-2222-3333-444444444444",
"channel_id": "c1d2e3f4-aaaa-bbbb-cccc-dddddddddddd",
"channel_alt_id": "ALT-12345",
"channel_name": "My Shopify Store",
"channel_type": "shopify",
"store_id": "s1t2o3r4-eeee-ffff-0000-111111111111",
"remote_id": "5678901234",
"remote_status": "fulfilled",
"status": "fulfilled",
"customer": {
"id": 12345,
"customer_uuid": "cust-uuid-0001",
"company_id": 1,
"name": "Jane Smith",
"email": "jane.smith@example.com",
"created_at": "2025-06-10T08:00:00.000000Z",
"updated_at": "2026-01-15T14:32:00.000000Z"
},
"shipping_method": "Standard Shipping",
"shipping_address": {
"id": "addr-uuid-ship-001",
"name": "Jane Smith",
"company_name": "Acme Ltd",
"address_line_one": "123 High Street",
"address_line_two": "Floor 2",
"address_line_three": "",
"long_address": "123 High Street, Floor 2",
"county": "Greater London",
"city": "London",
"country_iso_code": "GB",
"zip": "EC1A 1BB",
"phone": "+441234567890"
},
"invoice_address": {
"id": "addr-uuid-inv-001",
"name": "Jane Smith",
"company_name": "Acme Ltd",
"address_line_one": "123 High Street",
"address_line_two": "",
"address_line_three": "",
"long_address": "123 High Street",
"county": "Greater London",
"city": "London",
"country_iso_code": "GB",
"zip": "EC1A 1BB",
"phone": "+441234567890"
},
"return": null,
"payment_method": "shopify_payments",
"send_via_webhook": true,
"payment_status": "paid",
"payment_details": {
"vat_id": "",
"vat_type": "",
"tax_total": "8.33",
"shipping_total": "4.99",
"discount_total": "0.00",
"discount_total_exc_tax": "0.00",
"order_subtotal": "41.65",
"order_subtotal_exc_tax": "33.32",
"order_total": "46.64",
"payment_method": "shopify_payments",
"payment_ref": "ch_3ABC123",
"payment_currency": "GBP",
"coupon_code": "",
"coupon_total": "0.00",
"coupon_total_exc_tax": "0.00"
},
"system_notes": "",
"delivery_notes": "Please leave at the door",
"customer_comments": "",
"gift_note": "",
"channel_specific": {
"shipping_code": "shopify-Standard Shipping-4.99",
"tags": ["VIP"],
"is_pos_order": false,
"order_number": 458754,
"total_weight": 421,
"shipping_code": "Free Express Tracked: 1-2 Days"
},
"order_access_url": "https://myshop.myshopify.com/admin/orders/5678901234",
"order_date": "2026-01-15T14:32:00.000000Z",
"order_import_date": "2026-01-15T14:33:12.000000Z",
"total_order_item_quantity": 1,
"total_order_item_quantity_inc_kits": 1,
"primary_reference_id": null,
"order_lines": [
{
"id": "item-uuid-0001",
"remote_id": "li_123456",
"sku": "WIDGET-BLU-M",
"channel_product_id": "cp-uuid-0001",
"master_product_id": "mp-uuid-0001",
"matched_sku": "WIDGET-BLU-M",
"quantity": 1,
"refunded_quantity": 0,
"name": "Blue Widget (Medium)",
"unit_price": "20.83",
"unit_price_exc_tax": "16.66",
"unit_discount": "0.00",
"total_discount": "0.00",
"unit_tax_rate": "20.02",
"unit_tax_value": "4.17",
"total_tax_value": "4.17",
"total_price": "20.83",
"is_tax_included": true,
"options": [
{
"option_name": "__kaching_bundles",
"option_value": {
"deal": "7tD45m",
"main": true,
"market": 5455,
"id": "ANtp"
}
}
],
"image_url": "https://cdn.example.com/widget-blue.jpg",
"file_url": null,
"notes": null
}
],
"md5_hash": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6"
},
"plugin": {
"id": "plg-uuid-0001",
"name": "Whistl 3PL"
},
"channel": {
"id": "c1d2e3f4-aaaa-bbbb-cccc-dddddddddddd",
"name": "My Shopify Store"
},
"fulfillment_plugin": {
"id": "plg-uuid-0001",
"name": "Whistl 3PL"
}
}
Fulfillment Field Reference
9. fulfillments.updated
Fired when an existing fulfillment is updated (tracking code changed, status updated, etc.).
Payload: Identical structure to fulfillments.created.
10. products.created
Coming Soon β This event will be available in an upcoming release.
Fired when a new main (master) product is created in Neuro.
Payload: Identical structure to products.updated.
11. products.updated
Fired when a main (master) product is updated (stock quantity change, title change, etc.).
Payload: Product
{
"id": "mp-uuid-1001",
"sku": "TSHIRT-BLK-L",
"title": "Classic T-Shirt Black (Large)",
"product_nominal_code": "4000",
"tax_type": "standard",
"quantity": 150,
"price": "24.99",
"plugin_quantity": 150,
"plugin_quantity_synced_at": "2026-01-15T08:00:00.000000Z",
"plugin_sync_status": 2,
"plugin_synced_at": "2026-01-15T08:00:00.000000Z",
"api_quantity": 0,
"type": "product",
"auto_sync_stock": true,
"product_kit_items": [],
"channels": [
{
"id": "cp-uuid-1001",
"type": "product",
"store_id": "store-uuid-001",
"store_name": "My Store",
"channel_id": "ch-uuid-shopify",
"channel_name": "My Shopify Store",
"remote_id": "7654321098765",
"remote_sku": "TSHIRT-BLK-L",
"sku": "TSHIRT-BLK-L",
"matched_sku": "TSHIRT-BLK-L",
"title": "Classic T-Shirt Black (Large)",
"description": "A classic black t-shirt in size large.",
"image_url": "https://cdn.shopify.com/s/files/tshirt-black.jpg",
"pending_quantity": 148,
"synced_quantity": 148,
"quantity": 150,
"price": "24.99",
"currency": "GBP",
"product_nominal_code": "4000",
"dimensions": {
"weight": 0.35,
"weight_unit": "kg",
"length": 30.0,
"length_unit": "cm",
"width": 25.0,
"width_unit": "cm",
"height": 2.0,
"height_unit": "cm"
},
"export": {
"hs_code": "6109.10.00",
"country_of_origin": "GB",
"customs_description": "Cotton T-Shirt"
},
"barcodes": [
{
"id": 1,
"barcode": "5060000000001"
}
],
"use_low_stock_buffer": false,
"low_stock_buffer": 0,
"channel_product_url": "https://myshop.myshopify.com/admin/products/7654321098765"
}
],
"plugin_products": [
{
"id": "pp-uuid-0001",
"store_id": "store-uuid-001",
"store_name": "My Store",
"remote_id": "IP-98765",
"sku": "TSHIRT-BLK-L",
"product_id": 101,
"quantity": 150,
"plugin_sync_status": 2,
"plugin_synced_at": "2026-01-15T08:00:00.000000Z",
"title": "Classic T-Shirt Black (Large)",
"image_url": "",
"created_at": "2025-06-01T10:00:00.000000Z",
"updated_at": "2026-01-15T08:00:00.000000Z",
"plugin": {
"id": "a0c745fd-d344-48ab-b520-54985314654",
"name": "my amazon plugin",
"provider_type": "amazon_mcf",
"push_orders": true,
"use_max_order_limit": false,
"max_order_limit": 0,
"max_order_sent_days": 0,
"max_order_status": 0,
"is_active": true,
"is_connected": true,
"allow_order_split": false,
"is_default": false,
"push_order_cancellation_data": false,
"last_push_order_cancellation_data_at": null,
"refetch_fulfillment": false,
"channels": [
{
"id": "f38f9610-8d5b-1232-a19f-6f610289af4c",
"name": "My Shopify Store"
}
]
}
}
]
}Product Field Reference
Product with Kit Items Example
When type is kit:
{
"id": "mp-uuid-2001",
"sku": "KIT-STARTER",
"title": "Starter Kit",
"product_nominal_code": "",
"tax_type": "standard",
"quantity": 50,
"price": "39.99",
"plugin_quantity": 0,
"plugin_quantity_synced_at": null,
"plugin_sync_status": 0,
"plugin_synced_at": null,
"api_quantity": 0,
"type": "kit",
"auto_sync_stock": true,
"product_kit_items": [
{
"id": "mp-uuid-3001",
"sku": "WIDGET-RED-S",
"quantity": 1,
"name": "Red Widget (Small)"
},
{
"id": "mp-uuid-3002",
"sku": "WIDGET-GRN-S",
"quantity": 2,
"name": "Green Widget (Small)"
}
],
"channels": [],
"plugin_products": []
}
12. channels.products.created
Coming Soon β This event will be available in an upcoming release.
Fired when a new channel product is created (e.g. imported from a sales channel into Neuro).
Payload: Identical structure to channels.products.updated.
13. channels.products.updated
Fired when a channel product is updated (stock sync, quantity change, price update, etc.).
Payload: Channel Product
{
"id": "cp-uuid-1001",
"type": "product",
"store_id": "store-uuid-001",
"store_name": "My Store",
"channel_id": "ch-uuid-shopify",
"channel_name": "My Shopify Store",
"remote_id": "7654321098765",
"remote_sku": "TSHIRT-BLK-L",
"sku": "TSHIRT-BLK-L",
"matched_sku": "TSHIRT-BLK-L",
"title": "Classic T-Shirt Black (Large)",
"description": "A classic black t-shirt in size large.",
"image_url": "https://cdn.shopify.com/s/files/tshirt-black.jpg",
"pending_quantity": 148,
"synced_quantity": 148,
"quantity": 150,
"price": "24.99",
"currency": "GBP",
"product_nominal_code": "4000",
"dimensions": {
"weight": 0.35,
"weight_unit": "kg",
"length": 30.0,
"length_unit": "cm",
"width": 25.0,
"width_unit": "cm",
"height": 2.0,
"height_unit": "cm"
},
"export": {
"hs_code": "6109.10.00",
"country_of_origin": "GB",
"customs_description": "Cotton T-Shirt"
},
"barcodes": [
{ "id": 1, "barcode": "5060000000001" }
],
"meta_fields": null,
"use_low_stock_buffer": false,
"low_stock_buffer": 0,
"channel_product_url": "https://myshop.myshopify.com/admin/products/7654321098765"
}
Channel Product Field Reference
14. plugins.products.created
Coming Soon β This event will be available in an upcoming release.
Fired when a new plugin product is created in Neuro.
Payload: Identical structure to plugins.products.updated.
15. plugins.products.updated
Fired when a plugin product is updated.
Payload: Plugin Product
{
"id": "pp-uuid-0001",
"store_id": "store-uuid-001",
"store_name": "My Store",
"remote_id": "IP-98765",
"sku": "TSHIRT-BLK-L",
"product_id": 101,
"quantity": 150,
"plugin_sync_status": 2,
"plugin_synced_at": "2026-01-15T08:00:00.000000Z",
"title": "Classic T-Shirt Black (Large)",
"image_url": "",
"created_at": "2025-06-01T10:00:00.000000Z",
"updated_at": "2026-01-15T08:00:00.000000Z",
"product": {
"id": "mp-uuid-1001",
"sku": "TSHIRT-BLK-L",
"title": "Classic T-Shirt Black (Large)",
"product_nominal_code": "4000",
"tax_type": "standard",
"quantity": 150,
"price": "24.99",
"plugin_quantity": 150,
"plugin_quantity_synced_at": "2026-01-15T08:00:00.000000Z",
"plugin_sync_status": 2,
"plugin_synced_at": "2026-01-15T08:00:00.000000Z",
"api_quantity": 0,
"type": "product",
"auto_sync_stock": true,
"product_kit_items": [],
"channels": [],
"plugin_products": []
},
"plugin": {
"id": "plg-uuid-0001",
"name": "Inventory Planner",
"provider_type": "inventory_planner",
"push_orders": true,
"use_max_order_limit": false,
"max_order_limit": 0,
"max_order_sent_days": 30,
"max_order_status": 0,
"is_active": true,
"is_connected": true,
"push_order_cancellation_data": false,
"last_push_order_cancellation_data_at": null
}
}
Plugin Product Field Reference
16. invoices.received
Fired when a new invoice is received / created.
Payload: Invoice
{
"id": "inv-uuid-0001",
"invoice_number": "INV-2026-0042",
"order_id": 500,
"currency": "GBP",
"store_id": "store-uuid-001",
"channel_id": "ch-uuid-shopify",
"shipping_total": "4.99",
"shipping_tax_type": "standard",
"shipping_account_code": "4200",
"notes": "Monthly recurring order",
"total": "46.64",
"invoice_date": "2026-01-15T00:00:00.000000Z",
"due_date": "2026-02-14T00:00:00.000000Z",
"notify_contact": true,
"meta": null,
"sync_status": 0,
"status": "pending",
"lines": [
{
"id": "invl-uuid-0001",
"product_nominal_code": "4000",
"product": {
"id": "mp-uuid-1001",
"sku": "WIDGET-BLU-M",
"title": "Blue Widget (Medium)",
"product_nominal_code": "4000",
"tax_type": "standard",
"quantity": 150,
"price": "20.83",
"plugin_quantity": 150,
"plugin_quantity_synced_at": "2026-01-15T08:00:00.000000Z",
"plugin_sync_status": 2,
"plugin_synced_at": "2026-01-15T08:00:00.000000Z",
"api_quantity": 0,
"type": "product",
"auto_sync_stock": true,
"product_kit_items": [],
"channels": [],
"plugin_products": []
},
"sku": "WIDGET-BLU-M",
"description": "Blue Widget (Medium) x1",
"tax_type": "standard",
"quantity": 1,
"unit_price": "16.66",
"price": "20.83",
"discount_total": "0.00",
"tax_total": "4.17"
}
],
"customer": {
"id": 12345,
"customer_uuid": "cust-uuid-0001",
"company_id": 1,
"name": "Jane Smith",
"email": "jane.smith@example.com",
"created_at": "2025-06-10T08:00:00.000000Z",
"updated_at": "2026-01-15T14:32:00.000000Z"
},
"invoice_address": {
"id": "addr-uuid-inv-001",
"name": "Jane Smith",
"company_name": "Acme Ltd",
"address_line_one": "123 High Street",
"address_line_two": "",
"address_line_three": "",
"long_address": "123 High Street",
"county": "Greater London",
"city": "London",
"country_iso_code": "GB",
"zip": "EC1A 1BB",
"phone": "+441234567890"
}
}
Invoice Field Reference
17. invoices.updated
Fired when an existing invoice is updated.
Payload: Identical structure to invoices.received.
18. Channel-Specific Order Fields
In addition to the standard order fields, each channel merges additional fields into the order payload. These appear in two places:
channel_specificβ an object containing channel meta data. Built from the order'smeta_fieldsandorderMetarecords.Top-level merged fields β fields like
order_access_urlandioss_numberthat are merged directly into the root of the order JSON.
Merged Top-Level Fields by Channel
These fields appear at the root level of the order JSON (not inside channel_specific):
Shipping Method by Channel
channel_specific Fields β Per Channel Detail
Below is every field that can appear inside channel_specific for each channel, with conditions for when each field is included.
Shopify
{
"channel_specific": {
"order_number": "1042",
"tags": ["VIP", "wholesale", "gift_message:Happy Birthday!"],
"shipping_code": "shopify-Standard Shipping-4.99",
"total_weight": 500,
"is_pos_order": false,
"ioss_number": "IM1234567890",
"pudo_id": "PUDO-12345",
"what3words_address": {
"shipping_words": "filled.count.soap",
"billing_words": "index.home.raft",
"shipping_lat": "51.520847",
"shipping_long": "-0.195521",
"billing_lat": "51.520847",
"billing_long": "-0.195521",
"shipping_nearest_place": "London",
"billing_nearest_place": "London"
}
}
}
Amazon SP
{
"channel_specific": {
"is_prime": false,
"fulfillment_channel": "MFN",
"ship_service_level": "Std UK Dom_2",
"shipment_service_level_category": "Standard",
"earliest_ship_date": "2026-01-15T00:00:00Z",
"latest_ship_date": "2026-01-17T23:59:59Z",
"earliest_delivery_date": "2026-01-18T00:00:00Z",
"latest_delivery_date": "2026-01-22T23:59:59Z",
"ioss": "ioss",
"is_bopis": false,
"bopis_store": "Amazon Fresh London"
}
}
WooCommerce
{
"channel_specific": {
"what3words_address": {
"shipping_words": "filled.count.soap",
"billing_words": "index.home.raft",
"shipping_lat": "51.520847",
"shipping_long": "-0.195521",
"billing_lat": "51.520847",
"billing_long": "-0.195521",
"shipping_nearest_place": "London",
"billing_nearest_place": "London"
}
}
}
When no What3Words data is present, channel_specific may be null or an empty object.
Magento
{
"channel_specific": {
"increment_id": "000000045",
"gift_message": "Happy Birthday!",
"customer_group_id": "1",
"what3words_address": {
"shipping_words": "filled.count.soap",
"billing_words": null,
"shipping_lat": "51.520847",
"shipping_long": "-0.195521",
"billing_lat": null,
"billing_long": null,
"shipping_nearest_place": "London",
"billing_nearest_place": null
},
"invoice_created": true
}
}
eBay
{
"channel_specific": {
"buyer_user_id": "john_doe_123",
"selling_manager_sales_record_number": "5678",
"ioss_number": "IM1234567890"
}
}
Etsy
{
"channel_specific": {
"tags": ["gift", "custom-engraving"]
}
}
BigCommerce
{
"channel_specific": {
"what3words_address": {
"shipping_words": "filled.count.soap",
"billing_words": null,
"shipping_lat": "51.520847",
"shipping_long": "-0.195521",
"billing_lat": null,
"billing_long": null,
"shipping_nearest_place": "London",
"billing_nearest_place": null
}
}
}
When no What3Words data is present, channel_specific will be null.
OpenCart
{
"channel_specific": {
"what3words_address": {
"shipping_words": "filled.count.soap",
"billing_words": null,
"shipping_lat": "51.520847",
"shipping_long": "-0.195521",
"billing_lat": null,
"billing_long": null,
"shipping_nearest_place": "London",
"billing_nearest_place": null
}
}
}
When no What3Words data is present, channel_specific will be null.
PrestaShop
PrestaShop does not populate channel_specific. The field will be null.
VisualSoft
{
"channel_specific": {
"tags": ["express", "gift-wrap"],
"eori_number": "GB123456789000",
"ioss_number": "IM1234567890"
}
}
BtoB Wave
{
"channel_specific": {
"custom_field_1": "value_1",
"custom_field_2": "value_2"
}
}
TikTok Shop
{
"channel_specific": {
"package_ids": ["PKG-001", "PKG-002"],
"tags": ["Late shipment"]
}
}
OnBuy
{
"channel_specific": {
"site_id": "2000",
"site_name": "OnBuy UK"
}
}
When neither field is present, channel_specific will be null.
ReCharge
{
"channel_specific": {
"shopify_id": "5001234567890",
"shopify_cart_token": "abc123def456",
"shopify_customer_id": "cust_789",
"shopify_order_id": "ord_456",
"shopify_order_number": "1042",
"order_number": "RC-10234",
"shipping_code": "standard",
"tags": ["subscription", "recurring"]
}
}
Note: Empty values for shopify_* fields are filtered out β only non-empty values are included.
Linnworks
{
"channel_specific": {
"tags": ["Priority", "Express"]
}
}
When tags are not enabled, channel_specific will be null.
DC Ecommerce
{
"channel_specific": {
"shopify_order_id": "5001234567890",
"tags": ["wholesale", "attr_key: attr_value"]
}
}
What3Words Object
When a channel has What3Words integration enabled, the what3words_address object contains:
{
"shipping_words": "filled.count.soap",
"billing_words": "index.home.raft",
"shipping_lat": "51.520847",
"shipping_long": "-0.195521",
"billing_lat": "51.520847",
"billing_long": "-0.195521",
"shipping_nearest_place": "London",
"billing_nearest_place": "London"
}
Supported on: Shopify, WooCommerce, Magento, BigCommerce, OpenCart
19. Shared Sub-Object Schemas
Customer Object
{
"id": 12345,
"customer_uuid": "cust-uuid-0001",
"company_id": 1,
"name": "Jane Smith",
"email": "jane.smith@example.com",
"created_at": "2025-06-10T08:00:00.000000Z",
"updated_at": "2026-01-15T14:32:00.000000Z"
}
Address Object
{
"id": "addr-uuid-001",
"name": "Jane Smith",
"company_name": "Acme Ltd",
"address_line_one": "123 High Street",
"address_line_two": "Floor 2",
"address_line_three": "",
"long_address": "123 High Street, Floor 2",
"county": "Greater London",
"city": "London",
"country_iso_code": "GB",
"zip": "EC1A 1BB",
"phone": "+441234567890"
}
Payment Details Object
{
"vat_id": "",
"vat_type": "",
"tax_rate": "20.00",
"tax_total": "8.33",
"shipping_total": "4.99",
"discount_total": "0.00",
"discount_total_exc_tax": "0.00",
"order_subtotal": "41.65",
"order_subtotal_exc_tax": "33.32",
"order_total": "46.64",
"payment_method": "shopify_payments",
"payment_ref": "ch_3ABC123",
"payment_currency": "GBP",
"coupon_code": "",
"coupon_total": "0.00",
"coupon_total_exc_tax": "0.00"
}
Order Line Item Object
{
"id": "item-uuid-0001",
"remote_id": "li_123456",
"sku": "WIDGET-BLU-M",
"channel_product_id": "cp-uuid-0001",
"master_product_id": "mp-uuid-0001",
"matched_sku": "WIDGET-BLU-M",
"quantity": 1,
"refunded_quantity": 0,
"name": "Blue Widget (Medium)",
"unit_price": "20.83",
"unit_price_exc_tax": "16.66",
"unit_discount": "0.00",
"total_discount": "0.00",
"unit_tax_rate": "20.02",
"unit_tax_value": "4.17",
"total_tax_value": "4.17",
"total_price": "20.83",
"is_tax_included": true,
"options": null,
"image_url": "https://cdn.example.com/widget-blue.jpg",
"file_url": null,
"notes": null,
"kit": [
{ "quantity": 1, "sku": "WIDGET-RED-S", "name": "Red Widget (Small)" }
]
}
Fulfillment Object
When an order has a fulfillment, the fulfillment field in order payloads contains:
{
"id": "ff-uuid-0001",
"order_id": "f7e6d5c4-1111-2222-3333-444444444444",
"order_primary_reference_id": null,
"order_remote_id": "5678901234",
"order_remote_alt_id": "ALT-12345",
"courier": {
"id": "cc-uuid-0001",
"name": "Royal Mail",
"custom_name": "RM Tracked 24"
},
"shipping_method": "Royal Mail Tracked 24",
"shipping_tracking_code": "JD012345678GB",
"tracking_url": "https://www.royalmail.com/track-your-item#/tracking-results/JD012345678GB",
"fulfillment_date": "2026-01-16T10:00:00.000000Z",
"sync_status": 2,
"items": [
{ "sku": "WIDGET-BLU-M", "quantity": 1 }
],
"order_items": [
{ "remote_id": "li_123456", "sku": "WIDGET-BLU-M", "quantity": 1 }
]
}
Return Object
{
"id": "ret-uuid-0001",
"return_date": "2026-01-20T12:00:00.000000Z",
"sync_status": 2,
"items": [
{ "sku": "WIDGET-BLU-M", "quantity": 1, "reason": "Defective" }
]
}
Courier Object
{
"id": "cc-uuid-0001",
"name": "Royal Mail",
"custom_name": "RM Tracked 24"
}
Dimensions Object
{
"weight": 0.35,
"weight_unit": "kg",
"length": 30.0,
"length_unit": "cm",
"width": 25.0,
"width_unit": "cm",
"height": 2.0,
"height_unit": "cm"
}
Export (Customs) Object
{
"hs_code": "6109.10.00",
"country_of_origin": "GB",
"customs_description": "Cotton T-Shirt"
}
Kit Item Object
{
"id": "mp-uuid-3001",
"sku": "WIDGET-RED-S",
"quantity": 1,
"name": "Red Widget (Small)"
}
Channel Product Object
See Section 13 for the full field reference.
Plugin Product Object
See Section 15 for the full field reference.
Plugin Object
{
"id": "plg-uuid-0001",
"name": "Whistl 3PL",
"provider_type": "whistl",
"push_orders": true,
"use_max_order_limit": false,
"max_order_limit": 0,
"max_order_sent_days": 30,
"max_order_status": 0,
"is_active": true,
"is_connected": true,
"push_order_cancellation_data": false,
"last_push_order_cancellation_data_at": null
}
Order Fulfillment Item Object
{
"remote_id": "li_123456",
"sku": "WIDGET-BLU-M",
"quantity": 1
}
Invoice Line Item Object
{
"id": "invl-uuid-0001",
"product_nominal_code": "4000",
"product": { },
"sku": "WIDGET-BLU-M",
"description": "Blue Widget (Medium) x1",
"tax_type": "standard",
"quantity": 1,
"unit_price": "16.66",
"price": "20.83",
"discount_total": "0.00",
"tax_total": "4.17"
}
All data in this document is fictitious. No real customer, order, address, or product data is used.