Integrating your WooCommerce store with Flexito OmniAI can significantly enhance your e-commerce operations. From automating order management to tracking shipments and managing customer interactions, this integration streamlines your processes and helps boost efficiency.
Order Creation (#WooCommerce-_rt5w45p0x2s6OrderCreation)
Order Update (#WooCommerce-_z0auxqd7a11cOrderUpdate)
User Creation Using Triggers (#WooCommerce-_cpfq07vdhe4rUserCreationUsingTriggers)
Installing the Plugin (#WooCommerce-InstallingthePlugin)
Integrating the Plugin With Flexito OmniAI (#WooCommerce-IntegratingthePluginWithUChat)
Placing An Order & Abandoning Cart (#WooCommerce-PlacingAnOrder&AbandoningCart)
Inbound Webhook Setup (#WooCommerce-InboundWebhookSetup)
Setting Up The Flow (#WooCommerce-SettingUpTheFlow)
WooCommerce is a widely-used open-source e-commerce plugin for WordPress, catering to online retailers of all sizes. Its popularity stems from its ease of installation, customisation options, and the fact that its base product is free.
WooCommerce has become a top choice for individuals and businesses looking to establish an online store and manage orders efficiently.
Flexito OmniAI seamlessly integrates with WooCommerce, supporting all actions available in the current WooCommerce API endpoints.
With Flexito OmniAI, you can automate various tasks for your WooCommerce store, such as creating, editing, and updating orders, fulfilling them, and tracking shipments and reviews.
Integrating Your WooCommerce Store With Flexito OmniAI
To connect Flexito OmniAI with your WooCommerce store, log in to your store and navigate to the WooCommerce tab.
Go to Settings, then Advanced, and select the REST API tab.
Select 'Add Key' to proceed.
Fill in the necessary details to generate your API Key.
Save the details and copy them for later use.
On Flexito OmniAI, go to the Integrations tab, select WooCommerce, and integrate your store.
Using WooCommerce Actions
To utilise WooCommerce actions, create an action node, click on integrations, locate the WooCommerce tab, and select it.
WooCommerce Native Actions
The WooCommerce API endpoints support the following actions.
Let's delve into each action in detail.
Add To Cart
Use this action to add a product to a customer's cart.
The following response payload is received:
{ "variant_id": 4120, "product_id": 375, "quantity": 1, "previous_quantity": 0 } |
|---|
Remove Cart By Variant
This action allows you to remove an item from the cart using its variant and product ID.
The following response payload is received:
{ "variant_id": 4120, "product_id": 375, "quantity": 1, "previous_quantity": 3 } |
|---|
Remove Cart By Product
This action removes an item from the cart using only the product ID.
The following response payload is received:
{ "product_id": 375, "removed_variants": [ { "variant_id": 4120, "quantity": 1 } ] }
|
|---|
Empty Cart
This action clears all items from the cart.
The following response payload is received:
Get Cart Items
This action retrieves details of all items currently in the cart.
The following response payload is received:
[ { "id": 258, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 2, "subtotal": "350.00", "subtotal_tax": "0.00", "total": "350.00", "total_tax": "0.00", "sku": "", "price": 175, "image": "", "parent_name": "DNK Black Shoes" } ] |
|---|
Get Cart Item IDs and Quantity
This action fetches the IDs and quantities of items in the cart.
The following response payload is received:
[ { "product_id": 375, "quantity": 2, "variation_id": 4120 } ] |
|---|
Create Order From Cart
Use this action to create an order from the items in the cart.
The following response payload is received:
{ "id": 4597, "parent_id": 0, "status": "pending", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T11:01:51", "date_modified": "T11:01:51", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "350.00", "total_tax": "0.00", "customer_id": 0, "order_key": "wc_order_5hKQmDkxUiesi", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": null, "date_paid": null, "cart_hash": "", "number": "4597", "meta_data": [ { "id": 6465, "key": "user_ns", "value": "f12372u" } ], "line_items": [ { "id": 259, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 2, "tax_class": "", "subtotal": "350.00", "subtotal_tax": "0.00", "total": "350.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": true, "needs_payment": true, "needs_processing": true, "date_created_gmt": "T11:01:51", "date_modified_gmt": "T11:01:51", "date_completed_gmt": null, "date_paid_gmt": null, "currency_symbol": "$" } |
|---|
Search For Coupons
This action searches for available coupons in your WooCommerce store using various parameters and queries.
The following response payload is received:
[ { "id": 4592, "code": "vipdiscount60fc", "amount": "10.00", "status": "publish", "date_created": "T06:56:57", "date_created_gmt": "T06:56:57", "date_modified": "T06:56:57", "date_modified_gmt": "T06:56:57", "discount_type": "percent", "description": "10% discount on entire order, single use", "date_expires": null, "date_expires_gmt": null, "usage_count": 1, "individual_use": false, "product_ids": [ ], "excluded_product_ids": [ ], "usage_limit": 1, "usage_limit_per_user": 1, "limit_usage_to_x_items": null, "free_shipping": false, "product_categories": [ ], "excluded_product_categories": [ ], "exclude_sale_items": false, "minimum_amount": "0.00", "maximum_amount": "0.00", "email_restrictions": [ ], "used_by": [ "" ], "meta_data": [ ], "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Get Coupon Info
Fetch details of a specific coupon using its ID with this action.
The following response payload is received:
{ "id": 4592, "code": "vipdiscount60fc", "amount": "10.00", "status": "publish", "date_created": "T06:56:57", "date_created_gmt": "T06:56:57", "date_modified": "T06:56:57", "date_modified_gmt": "T06:56:57", "discount_type": "percent", "description": "10% discount on entire order, single use", "date_expires": null, "date_expires_gmt": null, "usage_count": 1, "individual_use": false, "product_ids": [ ], "excluded_product_ids": [ ], "usage_limit": 1, "usage_limit_per_user": 1, "limit_usage_to_x_items": null, "free_shipping": false, "product_categories": [ ], "excluded_product_categories": [ ], "exclude_sale_items": false, "minimum_amount": "0.00", "maximum_amount": "0.00", "email_restrictions": [ ], "used_by": [ "" ], "meta_data": [ ] } |
|---|
Delete Coupon
This action deletes a coupon based on its ID.
The following response payload is received:
Create Coupon
Use this action to create a new coupon.
The following response payload is received:
{ "id": 4598, "code": "test12", "amount": "10.00", "status": "publish", "date_created": "T14:27:49", "date_created_gmt": "T14:27:49", "date_modified": "T14:27:49", "date_modified_gmt": "T14:27:49", "discount_type": "percent", "description": "test coupon", "date_expires": "T00:00:00", "date_expires_gmt": "T00:00:00", "usage_count": 0, "individual_use": false, "product_ids": [ ], "excluded_product_ids": [ ], "usage_limit": 1, "usage_limit_per_user": 1, "limit_usage_to_x_items": null, "free_shipping": false, "product_categories": [ ], "excluded_product_categories": [ ], "exclude_sale_items": false, "minimum_amount": "0.00", "maximum_amount": "0.00", "email_restrictions": [ ], "used_by": [ ], "meta_data": [ ] } |
|---|
Update Coupon
This action updates a coupon using its ID.
The following response payload is received:
{ "id": 4598, "code": "test12", "amount": "15.00", "status": "publish", "date_created": "T14:27:49", "date_created_gmt": "T14:27:49", "date_modified": "T14:27:49", "date_modified_gmt": "T14:27:49", "discount_type": "percent", "description": "test coupon", "date_expires": "T00:00:00", "date_expires_gmt": "T00:00:00", "usage_count": 0, "individual_use": false, "product_ids": [ ], "excluded_product_ids": [ ], "usage_limit": 3, "usage_limit_per_user": 1, "limit_usage_to_x_items": null, "free_shipping": false, "product_categories": [ ], "excluded_product_categories": [ ], "exclude_sale_items": false, "minimum_amount": "0.00", "maximum_amount": "0.00", "email_restrictions": [ ], "used_by": [ ], "meta_data": [ ] } |
|---|
Search For Customers
This action searches for customers using various parameters and queries.
The following response payload was received.
[ { "id": 2, "date_created": "T01:24:22", "date_created_gmt": "T01:24:22", "date_modified": "T01:24:22", "date_modified_gmt": "T01:24:22", "email": "", "first_name": "", "last_name": "last", "role": "customer", "username": "test", "billing": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "postcode": "", "country": "", "state": "", "email": "", "phone": "" }, "shipping": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "postcode": "", "country": "", "state": "", "phone": "" }, "is_paying_customer": false, "avatar_url": "", "meta_data": [ {...} // 3 keys ], "_links": { "self": [...], // 1 items "collection": [...] // 1 items } }, { "id": 5, "date_created": "T16:32:26", "date_created_gmt": "T16:32:26", "date_modified": "T16:32:26", "date_modified_gmt": "T16:32:26", "email": "", "first_name": "Mark", "last_name": "van der Made", "role": "customer", "username": "markvdmade", "billing": { "first_name": "Mark", "last_name": "van der Made", "company": "", "address_1": "palmonostora 143", "address_2": "", "city": "Palmonostora", "postcode": "6112", "country": "Hungary", "state": "bacs-kiskun", "email": "", "phone": "" }, "shipping": { "first_name": "Mark", "last_name": "van der Made", "company": "", "address_1": "palmonostora 143", "address_2": "", "city": "Palmonostora", "postcode": "6112", "country": "Hungary", "state": "bacs-kiskun", "phone": "" }, "is_paying_customer": false, "avatar_url": "", "meta_data": [ ], "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Get Customer Info
Fetch information for a customer using their ID with this action.
{ "id": 2, "date_created": "T01:24:22", "date_created_gmt": "T01:24:22", "date_modified": "T01:24:22", "date_modified_gmt": "T01:24:22", "email": "", "first_name": "", "last_name": "last", "role": "customer", "username": "test", "billing": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "postcode": "", "country": "", "state": "", "email": "", "phone": "" }, "shipping": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "postcode": "", "country": "", "state": "", "phone": "" }, "is_paying_customer": false, "avatar_url": "", "meta_data": [ { "id": 62, "key": "wc_last_active", "value": "" } ] } |
|---|
Create Customer
This action creates a new customer.
The following response payload is received:
{ "id": 6, "date_created": "T17:54:14", "date_created_gmt": "T17:54:14", "date_modified": "T17:54:14", "date_modified_gmt": "T17:54:14", "email": "", "first_name": "Hammad", "last_name": "Siddiqui", "role": "customer", "username": "HammadSiddiqui76", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "abc road , garden city", "address_2": "Maymar, Karachi", "city": "Karachi", "postcode": "78601", "country": "Pakistan", "state": "Sindh", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "abc road , garden city", "address_2": "Maymar, Karachi", "city": "Karachi", "postcode": "78601", "country": "Pakistan", "state": "Sindh", "phone": "" }, "is_paying_customer": false, "avatar_url": "", "meta_data": [ ] } |
|---|
Update Customer
Update a customer's details using their ID with this action.
Once created, a customer's username and password cannot be altered by the admin.
The following response payload is received:
{ "id": 6, "date_created": "T17:54:14", "date_created_gmt": "T17:54:14", "date_modified": "T17:57:24", "date_modified_gmt": "T17:57:24", "email": "", "first_name": "Hammad", "last_name": "Siddiqui", "role": "customer", "username": "HammadSiddiqui76", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "abc road , garden city", "address_2": "Maymar, Karachi", "city": "Karachi", "postcode": "78601", "country": "Pakistan", "state": "Sindh", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "abc road , garden city", "address_2": "Maymar, Karachi", "city": "Karachi", "postcode": "78601", "country": "Pakistan", "state": "Sindh", "phone": "" }, "is_paying_customer": false, "avatar_url": "", "meta_data": [ ] } |
|---|
Delete Customer
This action deletes a customer using their ID.
The following response payload is received.
{ "id": 2, "date_created": "T01:24:22", "date_created_gmt": "T01:24:22", "date_modified": "T01:24:22", "date_modified_gmt": "T01:24:22", "email": "", "first_name": "", "last_name": "last", "role": "customer", "username": "test", "billing": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "postcode": "", "country": "", "state": "", "email": "", "phone": "" }, "shipping": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "postcode": "", "country": "", "state": "", "phone": "" }, "is_paying_customer": false, "avatar_url": "", "meta_data": [ { "id": 62, "key": "wc_last_active", "value": "" } ] } |
|---|
Search For Orders
This action searches for orders using various parameters and queries.
The following response payload is received.
[ { "id": 4597, "parent_id": 0, "status": "pending", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T11:01:51", "date_modified": "T11:01:51", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "350.00", "total_tax": "0.00", "customer_id": 0, "order_key": "wc_order_5hKQmDkxUiesi", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": null, "date_paid": null, "cart_hash": "", "number": "4597", "meta_data": [ {...} // 3 keys ], "line_items": [ {...} // 16 keys ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": true, "needs_payment": true, "needs_processing": true, "date_created_gmt": "T11:01:51", "date_modified_gmt": "T11:01:51", "date_completed_gmt": null, "date_paid_gmt": null, "currency_symbol": "$", "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Get Order Info
Fetch order details using the order ID with this action.
The following response payload is received.
{ "id": 4597, "parent_id": 0, "status": "pending", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T11:01:51", "date_modified": "T11:01:51", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "350.00", "total_tax": "0.00", "customer_id": 0, "order_key": "wc_order_5hKQmDkxUiesi", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": null, "date_paid": null, "cart_hash": "", "number": "4597", "meta_data": [ { "id": 6465, "key": "user_ns", "value": "f12372u" } ], "line_items": [ { "id": 259, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 2, "tax_class": "", "subtotal": "350.00", "subtotal_tax": "0.00", "total": "350.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": true, "needs_payment": true, "needs_processing": true, "date_created_gmt": "T11:01:51", "date_modified_gmt": "T11:01:51", "date_completed_gmt": null, "date_paid_gmt": null, "currency_symbol": "$" } |
|---|
Create Order From Single Product
This action creates an order for a single product. For multiple items, use the 'Create Order From Cart' action.
The following response payload is received.
{ "id": 4599, "parent_id": 0, "status": "pending", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T18:13:13", "date_modified": "T18:13:13", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "175.00", "total_tax": "0.00", "customer_id": 4, "order_key": "wc_order_yhGfOfZ0eoCYe", "billing": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "state": "", "postcode": "", "country": "", "email": "", "phone": "" }, "shipping": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "state": "", "postcode": "", "country": "", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": null, "date_paid": null, "cart_hash": "", "number": "4599", "meta_data": [ ], "line_items": [ { "id": 260, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 1, "tax_class": "", "subtotal": "175.00", "subtotal_tax": "0.00", "total": "175.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": true, "needs_payment": true, "needs_processing": true, "date_created_gmt": "T18:13:13", "date_modified_gmt": "T18:13:13", "date_completed_gmt": null, "date_paid_gmt": null, "currency_symbol": "$" } |
|---|
Update Order
This action updates order details and status using the order ID.
The following response payload is received.
{ "id": 4597, "parent_id": 0, "status": "completed", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T11:01:51", "date_modified": "T18:16:14", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "350.00", "total_tax": "0.00", "customer_id": 0, "order_key": "wc_order_5hKQmDkxUiesi", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": "T18:16:14", "date_paid": "T18:16:14", "cart_hash": "", "number": "4597", "meta_data": [ { "id": 6465, "key": "user_ns", "value": "f12372u" }, { "id": 6499, "key": "_new_order_email_sent", "value": "true" } ], "line_items": [ { "id": 259, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 2, "tax_class": "", "subtotal": "350.00", "subtotal_tax": "0.00", "total": "350.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": false, "needs_payment": false, "needs_processing": true, "date_created_gmt": "T11:01:51", "date_modified_gmt": "T18:16:14", "date_completed_gmt": "T18:16:14", "date_paid_gmt": "T18:16:14", "currency_symbol": "$" } |
|---|
Delete Order
This action deletes an order using the order ID.
The following response payload is received.
{ "id": 4597, "parent_id": 0, "status": "completed", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T11:01:51", "date_modified": "T18:16:14", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "350.00", "total_tax": "0.00", "customer_id": 0, "order_key": "wc_order_5hKQmDkxUiesi", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": "T18:16:14", "date_paid": "T18:16:14", "cart_hash": "", "number": "4597", "meta_data": [ { "id": 6465, "key": "user_ns", "value": "f12372u" }, { "id": 6499, "key": "_new_order_email_sent", "value": "true" } ], "line_items": [ { "id": 259, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 2, "tax_class": "", "subtotal": "350.00", "subtotal_tax": "0.00", "total": "350.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": false, "needs_payment": false, "needs_processing": true, "date_created_gmt": "T11:01:51", "date_modified_gmt": "T18:16:14", "date_completed_gmt": "T18:16:14", "date_paid_gmt": "T18:16:14", "currency_symbol": "$" } |
|---|
Create Order Note
Use this action to add a note to an order using the order ID.
The following response payload is received.
{ "id": 65, "author": "WooCommerce", "date_created": "T18:21:24", "date_created_gmt": "T18:21:24", "note": "This is a test order", "customer_note": false } |
|---|
Search For Products
This action searches for products using various parameters and queries.
The following response payload is received.
[ { "id": 375, "name": "DNK Black Shoes", "slug": "dnk-black-shoes", "permalink": "", "type": "variable", "status": "publish", "featured": false, "catalog_visibility": "visible", "description": "", "short_description": "", "sku": "", "price": "175", "regular_price": "", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "purchasable": true, "total_sales": 30, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "external_url": "", "button_text": "", "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "sold_individually": false, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_required": true, "shipping_taxable": true, "shipping_class": "", "shipping_class_id": 0, "reviews_allowed": true, "average_rating": "0.00", "rating_count": 0, "parent_id": 0, "purchase_note": "", "attributes": [ ], "variations": [ 4120, 4119, 4122, 4121 ], "grouped_products": [ ], "menu_order": 0, "related_ids": [ 242, 229, 86, 211, 79 ], "stock_status": "instock", "has_options": true, "image": "" } ] |
|---|
Get Product Info
Fetch product details using the product ID with this action.
The following response payload is received.
{ "id": 375, "name": "DNK Black Shoes", "slug": "dnk-black-shoes", "permalink": "", "type": "variable", "status": "publish", "featured": false, "catalog_visibility": "visible", "description": "", "short_description": "", "sku": "", "price": "175", "regular_price": "", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "purchasable": true, "total_sales": 30, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "external_url": "", "button_text": "", "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "sold_individually": false, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_required": true, "shipping_taxable": true, "shipping_class": "", "shipping_class_id": 0, "reviews_allowed": true, "average_rating": "0.00", "rating_count": 0, "parent_id": 0, "purchase_note": "", "attributes": [ ], "variations": [ 4120, 4119, 4122, 4121 ], "grouped_products": [ ], "menu_order": 0, "related_ids": [ 247, 209, 160, 169, 109 ], "stock_status": "instock", "has_options": true, "image": "" } |
|---|
Create Product
Use this action to add a new product to your WooCommerce store.
The following response payload is received.
{ "id": 4600, "name": "Test Product", "slug": "test-product", "permalink": "", "type": "simple", "status": "publish", "featured": false, "catalog_visibility": "visible", "description": "this is a test product", "short_description": "", "sku": "123456", "price": "10", "regular_price": "10", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "purchasable": true, "total_sales": 0, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "external_url": "", "button_text": "", "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "sold_individually": false, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_required": true, "shipping_taxable": true, "shipping_class": "", "shipping_class_id": 0, "reviews_allowed": true, "average_rating": "0", "rating_count": 0, "parent_id": 0, "purchase_note": "", "attributes": [ ], "variations": [ ], "grouped_products": [ ], "menu_order": 0, "related_ids": [ 109, 212, 157, 210, 229 ], "stock_status": "instock", "has_options": false, "image": null } |
|---|
Update Product
This action updates product details using the product ID.
The following response payload is received.
{ "id": 4600, "name": "Test Product", "slug": "test-product", "permalink": "", "type": "simple", "status": "pending", "featured": false, "catalog_visibility": "visible", "description": "this is a test product", "short_description": "", "sku": "123456", "price": "10", "regular_price": "10", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "purchasable": true, "total_sales": 0, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "external_url": "", "button_text": "", "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "sold_individually": false, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_required": true, "shipping_taxable": true, "shipping_class": "", "shipping_class_id": 0, "reviews_allowed": true, "average_rating": "0", "rating_count": 0, "parent_id": 0, "purchase_note": "", "attributes": [ ], "variations": [ ], "grouped_products": [ ], "menu_order": 0, "related_ids": [ 252, 86, 247, 95, 242 ], "stock_status": "instock", "has_options": false, "image": null } |
|---|
Delete Product
This action removes a product using the product ID.
The following response payload is received.
{ "id": 4600, "name": "Test Product", "slug": "test-product", "permalink": "", "date_created": "T01:02:07", "date_created_gmt": "T01:02:07", "date_modified": "T01:03:28", "date_modified_gmt": "T01:03:28", "type": "simple", "status": "pending", "featured": false, "catalog_visibility": "visible", "description": "this is a test product", "short_description": "", "sku": "123456", "price": "10", "regular_price": "10", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "purchasable": true, "total_sales": 0, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "external_url": "", "button_text": "", "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "sold_individually": false, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_required": true, "shipping_taxable": true, "shipping_class": "", "shipping_class_id": 0, "reviews_allowed": true, "average_rating": "0", "rating_count": 0, "upsell_ids": [ ], "cross_sell_ids": [ ], "parent_id": 0, "purchase_note": "", "categories": [ { "id": 49, "name": "Women", "slug": "women" } ], "tags": [ { "id": 57, "name": "Test Product", "slug": "test-product" } ], "images": [ ], "attributes": [ ], "default_attributes": [ ], "variations": [ ], "grouped_products": [ ], "menu_order": 0, "price_html": "<span class="woocommerce-Price-amount amount"><bdi><span class="woocommerce-Price-currencySymbol">$</span>10.00</bdi></span>", "related_ids": [ 160, 157, 194, 210, 252 ], "meta_data": [ ], "stock_status": "instock", "has_options": false } |
|---|
Search For Product Variants
This action searches for product variants using various filters.
The following response payload is received.
[ { "id": 4122, "date_created": "T08:01:49", "date_created_gmt": "T08:01:49", "date_modified": "T08:01:49", "date_modified_gmt": "T08:01:49", "description": "", "permalink": "", "sku": "", "price": "195", "regular_price": "195", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "status": "publish", "purchasable": true, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "stock_status": "instock", "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_class": "", "shipping_class_id": 0, "image": { "id": 2462, "date_created": "T07:22:32", "date_created_gmt": "T07:22:32", "date_modified": "T07:22:32", "date_modified_gmt": "T07:22:32", "src": "", "name": "sports-shoe2", "alt": "" }, "attributes": [ {...} // 3 keys ], "menu_order": 3, "meta_data": [ {...}, // 3 keys {...}, // 3 keys {...} // 3 keys ], "_links": { "self": [...], // 1 items "collection": [...], // 1 items "up": [...] // 1 items } } ] |
|---|
Get Product Variant Info
Fetch details for a variant using its variant ID and product ID.
The following response payload is received.
{ "id": 4122, "date_created": "T08:01:49", "date_created_gmt": "T08:01:49", "date_modified": "T08:01:49", "date_modified_gmt": "T08:01:49", "description": "", "permalink": "", "sku": "", "price": "195", "regular_price": "195", "sale_price": "", "date_on_sale_from": null, "date_on_sale_from_gmt": null, "date_on_sale_to": null, "date_on_sale_to_gmt": null, "on_sale": false, "status": "publish", "purchasable": true, "virtual": false, "downloadable": false, "downloads": [ ], "download_limit": -1, "download_expiry": -1, "tax_status": "taxable", "tax_class": "", "manage_stock": false, "stock_quantity": null, "stock_status": "instock", "backorders": "no", "backorders_allowed": false, "backordered": false, "low_stock_amount": null, "weight": "", "dimensions": { "length": "", "width": "", "height": "" }, "shipping_class": "", "shipping_class_id": 0, "image": { "id": 2462, "date_created": "T07:22:32", "date_created_gmt": "T07:22:32", "date_modified": "T07:22:32", "date_modified_gmt": "T07:22:32", "src": "", "name": "sports-shoe2", "alt": "" }, "attributes": [ { "id": 0, "name": "color", "option": "red" } ], "menu_order": 3, "meta_data": [ { "id": 3030, "key": "_wxr_import_user_slug", "value": "alex" }, { "id": 3031, "key": "_astra_sites_imported_post", "value": "1" }, { "id": 3032, "key": "_astra_sites_enable_for_batch", "value": "1" } ] } |
|---|
Search For Categories
This action retrieves categories using various parameters and queries.
The following response payload is received.
[ { "id": 49, "name": "Women", "slug": "women", "parent": 0, "description": " Nam nec tellus a odio tincidunt auctor a ornare odio. Sed non mauris vitae erat consequat auctor eu in elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Mauris in erat justo. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit sed ut. ", "display": "default", "image": { "id": 500, "date_created": "T05:50:12", "date_created_gmt": "T05:50:12", "date_modified": "T23:57:20", "date_modified_gmt": "T23:57:20", "src": "", "name": "women-fashion-free-img", "alt": "" }, "menu_order": 0, "count": 17, "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Get Category Info
Fetch category details using the category ID with this action.
The following response payload is received.
[ { "id": 49, "name": "Women", "slug": "women", "parent": 0, "description": " Nam nec tellus a odio tincidunt auctor a ornare odio. Sed non mauris vitae erat consequat auctor eu in elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Mauris in erat justo. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit sed ut. ", "display": "default", "image": { "id": 500, "date_created": "T05:50:12", "date_created_gmt": "T05:50:12", "date_modified": "T23:57:20", "date_modified_gmt": "T23:57:20", "src": "", "name": "women-fashion-free-img", "alt": "" }, "menu_order": 0, "count": 17, "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Get Product Tag Info
Fetch product tag details using the tag ID with this action.
The following response payload is received.
[ { "id": 49, "name": "Women", "slug": "women", "parent": 0, "description": " Nam nec tellus a odio tincidunt auctor a ornare odio. Sed non mauris vitae erat consequat auctor eu in elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Mauris in erat justo. Nullam ac urna eu felis dapibus condimentum sit amet a augue. Sed non neque elit sed ut. ", "display": "default", "image": { "id": 500, "date_created": "T05:50:12", "date_created_gmt": "T05:50:12", "date_modified": "T23:57:20", "date_modified_gmt": "T23:57:20", "src": "", "name": "women-fashion-free-img", "alt": "" }, "menu_order": 0, "count": 17, "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Create Product Tag
This action creates a new product tag.
The following response payload is received.
{ "id": 57, "name": "Test Product", "slug": "test-product", "description": "this is a test product", "count": 0 } |
|---|
List All Shipping Methods
This action lists all available shipping methods for the store.
The following response payload is received.
[ { "id": "flat_rate", "title": "Flat rate", "description": "Lets you charge a fixed rate for shipping.", "_links": { "self": [...], // 1 items "collection": [...] // 1 items } }, { "id": "free_shipping", "title": "Free shipping", "description": "Free shipping is a special method which can be triggered with coupons and minimum spends.", "_links": { "self": [...], // 1 items "collection": [...] // 1 items } }, { "id": "local_pickup", "title": "Local pickup", "description": "Allow customers to pick up orders themselves. By default, when using local pickup store base taxes will apply regardless of customer address.", "_links": { "self": [...], // 1 items "collection": [...] // 1 items } } ] |
|---|
Create A Product Review
Use this action to add a review for a product.
The following response payload is received.
{ "id": 66, "date_created": "T02:02:44", "date_created_gmt": "T02:02:44", "product_id": 375, "product_name": "DNK Black Shoes", "product_permalink": "", "status": "approved", "reviewer": "John Jigga", "reviewer_email": "", "review": "This is a very good product, me likes", "rating": 4, "verified": false, "reviewer_avatar_urls": { "24": "", "48": "", "96": "" } } |
|---|
Search Product Reviews
This action retrieves product reviews using various filters and parameters.
The following response payload is received.
[ { "id": 66, "date_created": "T02:02:44", "date_created_gmt": "T02:02:44", "product_id": 375, "product_name": "DNK Black Shoes", "product_permalink": "", "status": "approved", "reviewer": "John Jigga", "reviewer_email": "", "review": "<p>This is a very good product, me likes</p> ", "rating": 4, "verified": false, "reviewer_avatar_urls": { "24": "", "48": "", "96": "" }, "_links": { "self": [...], // 1 items "collection": [...], // 1 items "up": [...] // 1 items } } ] |
|---|
WooCommerce Native Triggers
WooCommerce integrates seamlessly with Flexito OmniAI to offer webhook triggers. These triggers activate whenever an event occurs on the WooCommerce store, either via the API or directly.
WooCommerce supports the following native triggers:
Order Creation
This trigger activates whenever an order is created on the WooCommerce store, either via the API or directly from the store.
The following response payload is received.
{ "id": 4599, "parent_id": 0, "status": "pending", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T18:13:13", "date_modified": "T18:13:13", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "175.00", "total_tax": "0.00", "customer_id": 4, "order_key": "wc_order_yhGfOfZ0eoCYe", "billing": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "state": "", "postcode": "", "country": "", "email": "", "phone": "" }, "shipping": { "first_name": "", "last_name": "", "company": "", "address_1": "", "address_2": "", "city": "", "state": "", "postcode": "", "country": "", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": null, "date_paid": null, "cart_hash": "", "number": "4599", "meta_data": [ ], "line_items": [ { "id": 260, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 1, "tax_class": "", "subtotal": "175.00", "subtotal_tax": "0.00", "total": "175.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": true, "needs_payment": true, "needs_processing": true, "date_created_gmt": "T18:13:13", "date_modified_gmt": "T18:13:13", "date_completed_gmt": null, "date_paid_gmt": null, "currency_symbol": "$" } |
|---|
Order Update
This trigger activates whenever an order is updated in the WooCommerce store, either via the API or directly.
The following response payload is received.
{ "id": 4597, "parent_id": 0, "status": "completed", "currency": "AUD", "version": "6.9.4", "prices_include_tax": false, "date_created": "T11:01:51", "date_modified": "T18:16:14", "discount_total": "0.00", "discount_tax": "0.00", "shipping_total": "0.00", "shipping_tax": "0.00", "cart_tax": "0.00", "total": "350.00", "total_tax": "0.00", "customer_id": 0, "order_key": "wc_order_5hKQmDkxUiesi", "billing": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "email": "", "phone": "" }, "shipping": { "first_name": "Hammad", "last_name": "Siddiqui", "company": "", "address_1": "ABC Road, Garden City", "address_2": "", "city": "Karachi", "state": "Sindh", "postcode": "", "country": "Pakistan", "phone": "" }, "payment_method": "", "payment_method_title": "", "transaction_id": "", "customer_ip_address": "", "customer_user_agent": "", "created_via": "rest-api", "customer_note": "", "date_completed": "T18:16:14", "date_paid": "T18:16:14", "cart_hash": "", "number": "4597", "meta_data": [ { "id": 6465, "key": "user_ns", "value": "f12372u" }, { "id": 6499, "key": "_new_order_email_sent", "value": "true" } ], "line_items": [ { "id": 259, "name": "DNK Black Shoes - blue", "product_id": 375, "variation_id": 4120, "quantity": 2, "tax_class": "", "subtotal": "350.00", "subtotal_tax": "0.00", "total": "350.00", "total_tax": "0.00", "taxes": [...], // 0 items "meta_data": [...], // 1 items "sku": "", "price": 175, "image": {...}, // 2 keys "parent_name": "DNK Black Shoes" } ], "tax_lines": [ ], "shipping_lines": [ ], "fee_lines": [ ], "coupon_lines": [ ], "refunds": [ ], "payment_url": "", "is_editable": false, "needs_payment": false, "needs_processing": true, "date_created_gmt": "T11:01:51", "date_modified_gmt": "T18:16:14", "date_completed_gmt": "T18:16:14", "date_paid_gmt": "T18:16:14", "currency_symbol": "$" } |
|---|
User Creation Using Triggers
Flexito OmniAI processes the trigger payload to match it with existing bot users. If a match is found, the flow is executed for that user. If not, a new user is created using the payload information.
If both email and phone are available, a user is created under the Web channel. If only an email is available, the user is still created under the Web channel. If only a phone number is available, the user is created under the WhatsApp channel.
If the payload lacks the minimum required information, the trigger cannot identify or create a user, and thus, is not activated.
Set up WooCommerce abandon cart automation to send WhatsApp message
While WooCommerce doesn't offer a native abandoned cart trigger, you can create a custom abandoned cart flow using free plugins and Flexito OmniAI in just a few steps.
Installing the Plugin
After logging in, navigate from your WooCommerce dashboard and scroll down to find the plugins tab on the left menu.
Click 'Add new plugin' and search for 'cart' in the search bar. You'll see several plugin options; for this guide, we'll use Cartflows.
Once installed, refresh your page and return to the dashboard.
Integrating the Plugin With Flexito OmniAI
From the dashboard, go to the WooCommerce tab and select Cart Abandonment.
Click on the Settings tab.
Here, you'll configure the trigger settings.
First, set the trigger interval. For this plugin, the minimum interval is 10 minutes.
Ensure that 'Enable Tracking' is checked.
Scroll to the webhook settings, toggle 'Enable webhook', and paste the inbound webhook URL created in Flexito OmniAI in the provided field.
Click 'Trigger sample' to verify payload reception. Once confirmed, scroll down and click 'Save Changes'.
Placing An Order & Abandoning Cart
Visit your WooCommerce storefront, add a product to the cart, proceed to checkout, and leave the page after entering billing details.
Do not complete the order. Since the trigger is set for 10 minutes, wait for this duration to receive the payload on your inbound webhook in Flexito OmniAI.
Inbound Webhook Setup
In Flexito OmniAI, go to tools, select inbound webhook, and click 'Edit' next to the webhook chosen for the abandoned cart setup.
After 10 minutes, click 'Listen to payload'.
Click 'Done' and preview the payload. Map all necessary values from the received payload.
Note: Ensure your phone number is formatted correctly with the country code. This can be set up in WooCommerce or manually formatted using JavaScript in Data preprocessing.
Once completed, connect the webhook to your desired flow.
Setting Up The Flow
Go to Contents, then WhatsApp templates. Ensure you have a template for abandoned carts. If not, create one in Flexito OmniAI and get it approved.
Proceed to the flow builder and set up the template as follows:
Once completed, you're all set. You can place and abandon another cart to test the flow.
WooCommerce Native Integration Course