Webhooks Integration
This article guides you on how to activate and send real-time updates to any system when an action happens on PuppetVendors.
Activating Webhooks
Our new webhook feature lets you automatically send real-time updates to any external system when specific actions happen in your app.
- Navigate to Settings -> Enterprise -> Webhooks
- In the Webhook URL field, enter an external URL to which you would like Puppet Vendor to send events. We recommend sending it to a secure URL with the https prefix.
e.g. *https://webhook.site/e5900661-28d9-4ff0-a5cb-4349bd155760 * ** **
The URL must be able to receive a payload message for each of the selected event types below.
- Select the event types you would like to receive. Available options are:
- Products
- Orders
- Payouts
- Users
- Vendors
For each selected event type, create, update, and delete events will be triggered, and the resource object will be sent as a payload to your defined webhook URL.
- Click on the Activate button.
Sample Data Payloads
Vendor
{
"event": "vendor.updated",
"payload": {
"__v": 0,
"allowGenerateInvoice": false,
"automatedPayoutsV2Enabled": false,
"commissionAmount": 20,
"commissionType": "percentage",
"createdAction": "manualCreation",
"createdAt": "2024-10-24T04:32:11.000Z",
"deductions": [],
"discount": true,
"ignoreFromPaywall": false,
"isHidden": false,
"lineItems": [],
"paywallStatus": {
"accountStatus": "LOCKED",
"bannerText": null,
"customReason": "Vendor subscription is active.",
"gracePeriodEndDate": "2024-10-24T04:32:11.892Z",
"lastPaymentDate": "2024-10-24T04:32:11.892Z",
"lastPaymentObject": null,
"latestCheckoutSessionId": null,
"subscriptionId": null,
"trialPeriodEndDate": "2024-10-24T04:32:11.892Z"
},
"shippingRate": {
"list": []
},
"shopId": "6315b3d0ede5eb3c453b03c0",
"updatedAt": "2024-10-24T04:32:11.000Z",
"vendorName": "frontpage"
},
"shopDomain": "your-shop.myshopify.com"
}
User
{
"event": "user.created",
"payload": {
"__v": 0,
"approved": true,
"attachedVendor": {
"__v": 0,
"_id": "6719cdcbba0c8213fc96869d",
"allowGenerateInvoice": false,
"automatedPayoutsV2Enabled": false,
"commissionAmount": 20,
"commissionType": "percentage",
"createdAction": "manualCreation",
"createdAt": "2024-10-24T04:32:11.000Z",
"deductions": [],
"discount": true,
"ignoreFromPaywall": false,
"isHidden": false,
"lineItems": [],
"notificationToken": [],
"paywallStatus": {
"accountStatus": "LOCKED",
"bannerText": null,
"customReason": "Vendor subscription is active.",
"gracePeriodEndDate": "2024-10-24T04:32:11.892Z",
"lastPaymentDate": "2024-10-24T04:32:11.892Z",
"lastPaymentObject": null,
"latestCheckoutSessionId": null,
"subscriptionId": null,
"trialPeriodEndDate": "2024-10-24T04:32:11.892Z"
},
"shippingRate": {
"list": []
},
"shopId": "6315b3d0ede5eb3c453b03c0",
"updatedAt": "2024-10-24T04:32:11.000Z",
"vendorName": "frontpage"
},
"createdAt": "2024-10-24T04:34:49.000Z",
"email": "support@puppetvendors.com",
"invitationDate": "2024-10-24T04:34:49.000Z",
"type": "vendor",
"updatedAt": "2024-10-24T04:34:49.000Z",
"vendorId": "6719cdcbba0c8213fc96869d"
},
"shopDomain": "your-shop.myshopify.com"
}
Order
{
"event": "order.created",
"payload": {
"order": {
"__v": 0,
"_id": "6719d0afd9b174fd02ae2045",
"_version": 1,
"billingAddress": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"first_name": "Macy",
"last_name": "",
"latitude": null,
"longitude": null,
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"cancelledAt": null,
"clientDetails": {
"accept_language": null,
"browser_height": null,
"browser_ip": "104.28.222.43",
"browser_width": null,
"session_hash": null,
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36"
},
"createdAt": "2024-10-24T04:42:49.000Z",
"customer": {
"admin_graphql_api_id": "gid://shopify/Customer/5998094188592",
"created_at": "2022-11-11T17:10:31+07:00",
"currency": "SGD",
"default_address": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"country_name": "Philippines",
"customer_id": 5998094188592,
"default": true,
"first_name": "Macy",
"id": 8524089425968,
"last_name": "",
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"email": "martin@puppetvendors.com",
"email_marketing_consent": {
"consent_updated_at": "2022-11-11T17:10:31+07:00",
"opt_in_level": "single_opt_in",
"state": "subscribed"
},
"first_name": "Martin",
"id": 5998094188592,
"last_name": "B",
"multipass_identifier": null,
"note": null,
"phone": null,
"sms_marketing_consent": null,
"state": "disabled",
"tags": "",
"tax_exempt": false,
"tax_exemptions": [],
"updated_at": "2024-10-24T11:42:53+07:00",
"verified_email": true
},
"fulfillments": [],
"isUpdated": false,
"lineItems": [
{
"__v": 0,
"_id": "6719d0b0d9b174fd02ae20e6",
"_version": 1,
"affiliateFee": 0,
"affiliateFeeGST": 0,
"affiliateFeePST": 0,
"cancelledAt": null,
"commission": 4.800000000000001,
"commissionPlan": "10%",
"costOfItem": 0,
"createdAt": "2024-10-24T04:44:32.000Z",
"date": "2024-10-24T04:42:49.000Z",
"deduction": 2,
"discount": 0,
"extraInformation": {
"billingAddress": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"first_name": "Macy",
"last_name": "",
"latitude": null,
"longitude": null,
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"cancelledAt": null,
"customProperties": [],
"customer": {
"admin_graphql_api_id": "gid://shopify/Customer/5998094188592",
"created_at": "2022-11-11T17:10:31+07:00",
"currency": "SGD",
"default_address": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"country_name": "Philippines",
"customer_id": 5998094188592,
"default": true,
"first_name": "Macy",
"id": 8524089425968,
"last_name": "",
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"email": "martin@puppetvendors.com",
"email_marketing_consent": {
"consent_updated_at": "2022-11-11T17:10:31+07:00",
"opt_in_level": "single_opt_in",
"state": "subscribed"
},
"first_name": "Martin",
"id": 5998094188592,
"last_name": "B",
"multipass_identifier": null,
"note": null,
"phone": null,
"sms_marketing_consent": null,
"state": "disabled",
"tags": "",
"tax_exempt": false,
"tax_exemptions": [],
"updated_at": "2024-10-23T13:35:11+07:00",
"verified_email": true
},
"fulfillment": {},
"shippingAddress": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"first_name": "Macy",
"last_name": "",
"latitude": 17.5951122,
"longitude": 120.7982528,
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
}
},
"fulfillment": {},
"fulfillmentService": "manual",
"globalDeductionLines": [
{
"deductionAmount": 4,
"deductionLabel": "Credit card fees",
"deductionType": "percentage",
"deductionValue": 2
}
],
"lineItemId": 13915303542832,
"lineItemIdLocal": "6719d0afd9b174fd02ae206c",
"lineItemName": "Custom item",
"lineItemPrice": 50,
"lineItemProductId": null,
"lineItemSku": null,
"lineItemVariant": null,
"lineItemVariantId": null,
"lineItemVariantImage": "https://app.puppetvendors.com/images/placeholder-image.png",
"orderId": 5806572077104,
"orderName": "#PV47843",
"orderNumber": 47843,
"payout": 43.2,
"payouts": [],
"quantity": 1,
"sales": 50,
"salesAfterDiscount": 50,
"shipping": 0,
"shopId": "6315b3d0ede5eb3c453b03c0",
"status": "paid",
"subVendors": [],
"tags": [],
"tax": 0,
"taxGST": 0,
"taxPST": 0,
"tcs": 0.5,
"totalGlobalDeductions": 2,
"type": "",
"updatedAt": "2024-10-24T04:44:32.000Z",
"vendorId": "64592387834a45c3ecd502bb",
"vendorName": "N/A"
},
{
"__v": 0,
"_id": "6719d0b0d9b174fd02ae20fa",
"_version": 1,
"affiliateFee": 0,
"affiliateFeeGST": 0,
"affiliateFeePST": 0,
"cancelledAt": null,
"commission": 12,
"commissionPlan": "12.5%",
"costOfItem": 0,
"createdAt": "2024-10-24T04:44:32.000Z",
"date": "2024-10-24T04:42:49.000Z",
"deduction": 4,
"discount": 0,
"extraInformation": {
"billingAddress": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"first_name": "Macy",
"last_name": "",
"latitude": null,
"longitude": null,
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"cancelledAt": null,
"customProperties": [],
"customer": {
"admin_graphql_api_id": "gid://shopify/Customer/5998094188592",
"created_at": "2022-11-11T17:10:31+07:00",
"currency": "SGD",
"default_address": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"country_name": "Philippines",
"customer_id": 5998094188592,
"default": true,
"first_name": "Macy",
"id": 8524089425968,
"last_name": "",
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"email": "martin@puppetvendors.com",
"email_marketing_consent": {
"consent_updated_at": "2022-11-11T17:10:31+07:00",
"opt_in_level": "single_opt_in",
"state": "subscribed"
},
"first_name": "Martin",
"id": 5998094188592,
"last_name": "B",
"multipass_identifier": null,
"note": null,
"phone": null,
"sms_marketing_consent": null,
"state": "disabled",
"tags": "",
"tax_exempt": false,
"tax_exemptions": [],
"updated_at": "2024-10-23T13:35:11+07:00",
"verified_email": true
},
"fulfillment": {},
"shippingAddress": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"first_name": "Macy",
"last_name": "",
"latitude": 17.5951122,
"longitude": 120.7982528,
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
}
},
"fulfillment": {},
"fulfillmentService": "manual",
"globalDeductionLines": [
{
"deductionAmount": 4,
"deductionLabel": "Credit card fees",
"deductionType": "percentage",
"deductionValue": 4
}
],
"lineItemId": 13915303510064,
"lineItemIdLocal": "6719d0afd9b174fd02ae2078",
"lineItemName": "testing webhooks for pdorudct - Blue",
"lineItemPrice": 100,
"lineItemProductId": 7310368866352,
"lineItemSku": "MKT-KUKPZEAMRT",
"lineItemVariant": "Blue",
"lineItemVariantId": 41024888766512,
"lineItemVariantImage": "https://cdn.shopify.com/s/files/1/0280/1444/4592/files/6315b3d0ede5eb3c453b03c0_1722921618983_Screenshot_2024-08-06_at_00.55.08_b9804709-06fc-4793-8921-d7a039a3a5d5.png?v=1725761420",
"orderId": 5806572077104,
"orderName": "#PV47843",
"orderNumber": 47843,
"payout": 84,
"payouts": [],
"quantity": 1,
"sales": 100,
"salesAfterDiscount": 100,
"shipping": 0,
"shopId": "6315b3d0ede5eb3c453b03c0",
"status": "paid",
"subVendors": [],
"tags": [
"Pink",
"Tags"
],
"tax": 0,
"taxGST": 0,
"taxPST": 0,
"tcs": 1,
"totalGlobalDeductions": 4,
"type": "gum",
"updatedAt": "2024-10-24T04:44:32.000Z",
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me"
}
],
"orderId": 5806572077104,
"orderName": "#PV47843",
"orderNumber": 47843,
"orderSummary": {
"acceptsMarketing": true,
"browserIp": "104.28.222.43",
"cancelledAt": null,
"currency": "SGD",
"customerEmail": "martin@puppetvendors.com",
"financialStatus": "paid",
"gateway": null,
"landingSite": null,
"landingSiteRef": null,
"referringSite": null,
"totalDiscount": "0.00",
"totalPrice": "150.00",
"totalTax": "0.00",
"totalWeight": 10
},
"paymentDetails": null,
"processedAt": "2024-10-24T04:42:48.000Z",
"refunds": [],
"shippingAddress": {
"address1": "",
"address2": "Blk 6 Lot 34 Ph 2 Greenville Homes",
"city": "",
"company": null,
"country": "Philippines",
"country_code": "PH",
"first_name": "Macy",
"last_name": "",
"latitude": 17.5951122,
"longitude": 120.7982528,
"name": "Macy",
"phone": null,
"province": "Abra",
"province_code": "PH-ABR",
"zip": "4108"
},
"shippingLines": [],
"shopId": "6315b3d0ede5eb3c453b03c0",
"tags": "",
"taxLines": [],
"updatedAt": "2024-10-24T04:43:42.000Z"
}
},
"shopDomain": "your-shop.myshopify.com"
}
Payout
{
"event": "payout.updated",
"payload": {
"amount": 149.76,
"attachedVendor": {
"__v": 0,
"_id": "649a945cf9bae3067ad3c6ce",
"allowGenerateInvoice": false,
"automatedPayoutsV2Enabled": true,
"automatedReportID": "658ceb5524f2ff1949e4fb95",
"commissionAmount": 12.5,
"commissionType": "percentage",
"createdAction": "autoCreationFromProductWebhook",
"createdAt": "2023-06-27T07:48:44.000Z",
"deductions": [],
"discount": true,
"ignoreFromPaywall": false,
"isHidden": false,
"lastAutomatedReportTime": "2024-03-01T00:00:22.000Z",
"lineItems": [],
"notificationToken": [],
"paywallStatus": {
"accountStatus": "LOCKED",
"bannerText": null,
"customReason": "",
"gracePeriodEndDate": "2024-04-29T09:10:27.756Z",
"lastPaymentDate": "2024-04-29T09:10:27.756Z",
"lastPaymentObject": null,
"latestCheckoutSessionId": "cs_test_b1tb9AOy8iLhs5odm3zHX3dAFUXOuZGKpkRvenBX6bInk2NjablJtXazLB",
"subscriptionId": null,
"trialPeriodEndDate": "2024-04-29T09:10:27.756Z"
},
"profile": {
"Contact Us": "",
"Facebook": "",
"Instagram": "",
"Legal Business Name": "Mom and Me",
"Pinterest": "",
"Profile Description": "Mom and baby needs",
"Snapchat": "",
"Twitter": "",
"Website": "",
"businessAddress": {
"address1": "Sample street 1",
"address2": "",
"city": "Singapore",
"country": "",
"countryCode": null,
"email": "martin@puppetvendors.com",
"name": "Martin Borasu",
"phone": "123456789",
"postalCode": "123456",
"state": "State",
"street1": "Sample street 1",
"zip": "123456"
},
"fullName": "Marj ",
"hasTax": false,
"paypalEmail": "",
"profileBanner": "",
"profileBannerId": "",
"setup": true,
"smartCollection": null,
"stripeAccountId": "acct_1Ojoql578nalWZWc"
},
"shippingRate": {
"amount": null,
"calculateBy": "orderRange",
"isAllowed": true,
"isInclude": true,
"list": [
{
"from": "100",
"rate": "0",
"to": "999"
}
],
"payer": "vendor",
"type": "fixed"
},
"shopId": "6315b3d0ede5eb3c453b03c0",
"stripeCustomerId": "cus_Q0rxvV9u8lgUqn",
"updatedAt": "2023-09-11T12:42:03.000Z",
"vendorName": "mom and me"
},
"batchId": "R2UD7NZSS0",
"customItems": [
{
"__v": 0,
"_id": "67187c16f313e25daff6ae35",
"amount": -20,
"batchId": "R2UD7NZSS0",
"comments": "Damaged In Store",
"createdAt": "2024-10-23T04:31:18.605Z",
"customId": "X9GJ6XBXBA",
"customItemDate": "2024-10-22T00:00:00.000Z",
"ignoreInPayout": false,
"shopId": "6315b3d0ede5eb3c453b03c0",
"status": "PAID",
"type": "DEDUCTION",
"updatedAt": "2024-10-23T04:31:18.605Z",
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me"
}
],
"data": {},
"expectedCurrency": "SGD",
"items": [
{
"_id": "671906e9d9b174fd02028fd1",
"balance": -84,
"financialStatus": "refunded",
"fulfillment": {},
"isScheduled": false,
"lineItemId": 432738041904,
"lineItemIdLocal": "671906e8d9b174fd02028e9a",
"lineItemName": "03th Jan Test productdd - Blue",
"lineItemProductId": 7310368866352,
"method": "bankTransfer",
"oldPayoutStatus": null,
"orderDate": "2024-10-23T06:35:08.000Z",
"orderNumber": 47841,
"paid": 0,
"payout": -84,
"payoutAmount": -84,
"payoutDate": "10/16/2024",
"payoutStatus": "paid",
"tax": 0,
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me"
},
{
"_id": "671906e9d9b174fd02028fe8",
"balance": 84,
"financialStatus": "refunded",
"fulfillment": {},
"isScheduled": false,
"lineItemId": 13899264262192,
"lineItemIdLocal": "671906e8d9b174fd02028e9c",
"lineItemName": "03th Jan Test productdd - Blue",
"lineItemProductId": 7310368866352,
"method": "bankTransfer",
"oldPayoutStatus": null,
"orderDate": "2024-10-18T06:57:48.000Z",
"orderNumber": 47841,
"paid": 0,
"payout": 84,
"payoutAmount": 84,
"payoutDate": "10/16/2024",
"payoutStatus": "paid",
"tax": 0,
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me"
},
{
"_id": "67121e49d9b174fd02042c1b",
"balance": 84.88,
"financialStatus": "paid",
"fulfillment": {},
"isScheduled": false,
"lineItemId": 13898958798896,
"lineItemIdLocal": "67121e48d9b174fd02042bbe",
"lineItemName": "03th Jan Test productdd - Blue",
"lineItemProductId": 7310368866352,
"method": "bankTransfer",
"oldPayoutStatus": null,
"orderDate": "2024-10-18T05:52:18.000Z",
"orderNumber": 47839,
"paid": 0,
"payout": 84.88,
"payoutAmount": 84.88,
"payoutDate": "10/16/2024",
"payoutStatus": "paid",
"tax": 0,
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me"
},
{
"_id": "67121e4ad9b174fd02042c7a",
"balance": 84.88,
"financialStatus": "paid",
"fulfillment": {},
"isScheduled": false,
"lineItemId": 13898961059888,
"lineItemIdLocal": "67121e49d9b174fd02042c00",
"lineItemName": "03th Jan Test productdd - Blue",
"lineItemProductId": 7310368866352,
"method": "bankTransfer",
"oldPayoutStatus": null,
"orderDate": "2024-10-18T05:54:02.000Z",
"orderNumber": 47840,
"paid": 0,
"payout": 84.88,
"payoutAmount": 84.88,
"payoutDate": "10/16/2024",
"payoutStatus": "paid",
"tax": 0,
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me"
}
],
"message": "Payouts marked successfully",
"payoutDate": "10/16/2024",
"payoutMethod": "bankTransfer",
"status": "fulfilled",
"transactionId": "SGD",
"vendorId": "649a945cf9bae3067ad3c6ce",
"vendorName": "mom and me",
"vendorUsers": []
},
"shopDomain": "your-shop.myshopify.com"
}
Product
{
"event": "product.updated",
"payload": {
"__v": 0,
"_id": "6719a41fd9b174fd028b8b78",
"brandName": "FrontPage",
"changes": [],
"createdAt": "2024-10-24T01:34:23.013Z",
"descriptionHtml": "<p>Our Link Product is made from 100% organic cotton, providing a sustainable and eco-friendly option for your wardrobe. Enjoy the soft and breathable material, without any harmful chemicals. As a product expert, we recommend this shirt for its environmentally friendly features and comfort.</p>",
"giftCard": false,
"graphqlProductId": "gid://shopify/Product/75674793013424",
"handle": "link-product",
"image": null,
"images": [],
"isDigital": false,
"medias": [],
"metafields": [],
"onlineStoreUrl": null,
"options": [
{
"id": 9613792018480,
"name": "Title",
"position": 1,
"values": [
"Default Title"
]
}
],
"productId": 7567479013424,
"productType": "Apparel",
"publishedAt": "2024-10-24T01:34:18.000Z",
"shopId": "6315b3d0ede5eb3c453b03c0",
"shopifyMedias": null,
"status": "active",
"tags": [],
"title": "001 - A Link Product",
"totalInventory": 0,
"totalVariants": 1,
"updatedAt": "2024-10-24T04:48:21.792Z",
"variants": [
{
"barcode": "",
"chargeTax": true,
"compareAtPrice": null,
"costOfItem": null,
"grams": 0,
"id": "gid://shopify/ProductVariant/416985070069296",
"inventoryItem": {
"id": "gid://shopify/InventoryItem/437945795542352",
"trackQuantity": true,
"unitCost": {
"amount": null
}
},
"inventoryPolicy": "DENY",
"inventoryQuantities": [
{
"availableQuantity": 0,
"locationId": "gid://shopify/Location/341638299184",
"name": "Warehouse 1"
},
{
"availableQuantity": 0,
"locationId": "gid://shopify/Location/609081275408",
"name": "Warehouse 2"
},
{
"availableQuantity": 0,
"locationId": "gid://shopify/Location/644596049968",
"name": "Warehouse 3"
}
],
"inventoryQuantity": 0,
"legacyResourceId": 41698070069296,
"name": "Default Title",
"options": "Default Title",
"position": 2,
"price": 45,
"requiresShipping": true,
"selectedOptions": [],
"sku": "",
"title": "Default Title",
"trackQuantity": true,
"weight": 0,
"weightUnit": "KILOGRAMS"
}
],
"vendor": "frontpage",
"vendorId": "6719cdcbba0c8213fc96869d"
},
"shopDomain": "your-shop.myshopify.com"
}
****
Updated on: 09/12/2024
Thank you!