Integrations which my clients can use

I want to connect my custom built CRM software with Woocommerce, such that whenever an event happens in my client’s Woocommerce estore, it gets passed into their account in the CRM.

Also I don’t want my clients to pay for this. I want to host the integration in my server but the integration should function for all clients.

How do I go about this?

Hey @Saandhy_Ganeriwala

There are a couple of parts to this one so it would be worth getting the boring bit out of the way. Don’t forget the license for n8n which may have an impact on what you want to do. Now that is out of the way :slight_smile:

You have 2 options with your plan to host n8n you can use the cloud option which is easier and has a fairly good price point or if you have your own server / cloud provider you can follow the server setup guide but I would suggest making sure your environment is secure before implementing the workflow.

Next up is the workflow itself, there is a Woo commerce node but it doesn’t appear to be a trigger so you would need to run it on a schedule to get the orders then from there depending on the CRM options it could just be a case of using the HTTP Request node to add in the data and you are all sorted.

Another approach might be to use the webhook feature in Woo commerce and use the webhook trigger to kick everything off.

I would probably take the webhook route then use the http request node to update the CRM, Best thing to do would be to setup n8n locally and have a play with a test store.

2 Likes

Thank you for the detailed reply.

Regarding the licensing, pls help me understand the below situation:

Suppose I have 1 n8n account (hosted on n8n’s cloud). I have 100 customers who want to connect their Woocommerce estores to my CRM and I create 100 workflows for those 100 customers in my n8n account (and those workflows keep running fine). I pay the bill on behalf of all those 100 customers (workflows).

I charge $X separately to the 100 customers for the above service.

Questions

  • Is the above possible?
  • Is licensing required for the above?
  • if I were to do the above in self-hosted manner, would the answers to the 1st two questions change?

Separate Question:

  • If suppose in a particular workflow execution, 5 orders are detected in Woocommerce and passed to my CRM , will it be counted as 5 executions?

Now the licensing part I don’t know, @RicardoE105, @jan or one of the others may be able to answer that part :slightly_smiling_face:

I would say rather than having 100 workflows though depending on what the webhook passes in you might be able to do it with 1 and look up the customer details in Airtable or a database somewhere.

With the executions each triggered run is one execution so if woo commerce does one per order and you have 5 that would be 5 executions but if it has an option to group them together so call a web hook every hour then all 5 orders would be in one execution.

That is where using a cron trigger with the woo commerce get orders node may be handy as that would be one execution and you could process all orders.

Depending on if there are restrictions on what you can do with the cloud licensing you could offer your customers 2 tiers one “real-time” option that uses triggers and one that is a bit slower and uses the cron schedule.

2 Likes

Hi @Saandhy_Ganeriwala!

You can do what you propose on n8n Cloud without a license (just paying the Cloud fee). However you’d have all your different customers mixed in one account, so you wouldn’t be able to give them access (they’d have to give you their WooCommerce credentials and you’d have to set everything up yourself).

If you wanted to give them access, or to separate their credentials, you would need to create separate n8n Cloud accounts for them.

Of course the alternative is to host n8n yourself. Then you’d have no Cloud fee to pay, but the license terms would kick in (which would have a cost to them, typically a revenue share).

1 Like

Thanks for the replies !

Can I send the Woocommerce credentials to n8n for all those 100 separate workflows via some API rather than manually filling it every time a customer wants to start a workflow?

And, can the workflows be created via Api as well? Suppose I have a 101st customer who wants to create the same workflow. So instead of going to n8n and copy pasting the earlier workflows, can I just make an API call to n8n to duplicate a workflow but with different credentials.

Next up is the workflow itself, there is a Woo commerce node but it doesn’t appear to be a trigger so you would need to run it on a schedule to get the orders then from there depending on the CRM options it could just be a case of using the HTTP Request node to add in the data and you are all sorted.

We do have a WooCommerce trigger.

1 Like

So there is, I did a quick check on my phone this morning and couldn’t spot it. That opens up a third option of using the WooCommerce Trigger :slightly_smiling_face:

So does it mean that a workflow will be executed only when a trigger is received from woocommerce?

So suppose I set the trigger as a new order being created. And if suppose the workflow is such that it fetches the order details (as soon as a new order is created) and passes the details in a HTTP API call .

So if suppose a client gets 1000 new orders on their Woocommerce estore in a month, will that mean that only 1000 workflows will be executed in the month ?

This will be very imp for us to decide which plan to go for.

That is correct.

Ah you beat me to it @RicardoE105 :slightly_smiling_face:

1 Like

Hi didn’t get an answer to these questions

Can I send the Woocommerce credentials to n8n for all those 100 separate workflows via some API rather than manually filling it every time a customer wants to start a workflow?

And, can the workflows be created via Api as well? Suppose I have a 101st customer who wants to create the same workflow. So instead of going to n8n and copy pasting the earlier workflows, can I just make an API call to n8n to duplicate a workflow but with different credentials.

From what I can see there is no official API (Feature Request here: Official n8n API) but @jan did say in another post (API to make flows in n8n - #3 by jan) that you could work around it by using the same post requests the UI makes to the backend. That could possibly help you out, Maybe you could make a web hook workflow to define a simple API that does what you need and use the HTTP Request node to run it.

An API is on the roadmap, but not yet publicly available.

You could remove the need to generate new workflows for each customer by dynamically configuring a single workflow to run for different customers. You could pass the credentials for each client into a workflow to set them dynamically (at least for services like WooCommerce that don’t use OAuth). You would do that by passing them in a webhook trigger.

If you called the workflow via webhook every X mins separately for each client, passing in the client credentials, you should be able to achieve what you’re looking for. Let me know if that makes sense :face_with_raised_eyebrow:

Thanks for the answers. makes sense :slight_smile:

Hi, regarding License terms :

Can we discuss this ?

Typically, we don’t charge a customer specifically for enabling such integrations.
We charge customers X for many features together and this integration would be 1 such feature. So how can revenue be determined here ?

I’m sure we can find a way of fitting to your revenue model. Best way would probably be to chat; you can set something up by filling out this short form


In the below workflow, I want to add a filter between the 1st and 2nd step such that:
the 2nd step should be executed only if the ‘Status’ = ‘processing’ in the data that was received in the 1st step

How can i set such filters?

Hey @Saandhy_Ganeriwala,

Can you please create a separate topic for this? :slight_smile:

done. thanks !

1 Like