Do you sell your courses and programmes through your Autorespond webshop while your course material sits in Poppyz? Then you do not want to add someone to Poppyz by hand after every order. With an outgoing webhook your environment passes that access on by itself: the customer pays and gains access to the course they bought within a few seconds. Poppyz then sends the participant their login details itself.
This guide shows step by step how to build that integration. You do not need an extra plugin or a middleman (such as Zapier) for it: everything is already in your environment.
Automations in Autorespond are based on FluentCRM – included in your package. Read the English documentation
How does it work? #
The integration consists of two parts:
- Poppyz has an address (URL) that new participants may be sent to. That address contains the number of the course someone gains access to.
- When an event happens, your Autorespond environment sends (for example: someone buys your Masterclass) the name, the email address and your Poppyz key to that address automatically. Poppyz creates the participant on the right course and sends the email with login details itself.
Important to know: the traffic goes one way, from your environment to Poppyz. Nothing in your webshop is ever changed from Poppyz.
You create one automation per course. Do you sell three courses that each give different access? Then you build that automation three times, each time with a different course number in the address.
What you need #
Three details from your Poppyz environment. If you cannot find them, ask Poppyz for them – they know exactly which address and which key belong to your environment.
- The web address of your course environment, for example
https://courses.yourwebsite.com. That is the website where your course participants log in. - Your connection key. This is a code you create or request in Poppyz that belongs to your environment. Without that key, Poppyz refuses the registration.
- The number of the course the customer has to gain access to. You will find that number in the admin area of your course site: open the course or tier in question and look in the web address in your browser for the number after
post=. If it sayspost=136, for example, then136is the number you need.
Keep these three details to hand, in a notepad for example. You use them in step 1 and step 6.
Step 1: build your webhook address #
Put the web address of your course environment and the course number one after the other in this address:
https://courses.yourwebsite.com/smc_api/subscriptions/COURSENUMBER
Filled in, that looks something like this:
https://courses.yourwebsite.com/smc_api/subscriptions/136
Watch out for two things. Replace courses.yourwebsite.com with the address of your own course environment, and put the number of the course at the end that this automation gives access to. Not sure whether this is the right address for your environment? Then check with Poppyz before you go on – that way you know you are testing a working integration in step 7.
Step 2: create a new automation #
In your environment, go to CRM & Emails → Automations.

In the picture: the automations overview with the New automation button (1), an automation in the list (2) and the status (3).
- With New automation you start a new one. Click it.
- This is what an existing automation looks like in the overview: you see the title, the trigger it starts on and how many contacts have gone through it.
- The status. Published means the automation really is running; on Draft nothing happens.
Step 3: choose what the automation starts on #
You now choose the trigger: the event that sets the automation in motion.

In the picture: the trigger picker: WooCommerce category (1), search field (2), the trigger New order (processing) (3) and Continue (4).
- The categories are on the left. If you give access after a purchase in your own webshop, choose WooCommerce.
- Do you already know the name of your trigger? Then type it in the search field.
- Choose New order (processing). That starts as soon as an order has been paid. This is usually what you want: someone pays and gains access straight away.
- Click Continue.
Other triggers that can make sense with this integration:
- Tag applied (CRM category): handy if you do not want to tie the access to one product, but decide yourself who gets it. Everyone who receives the tag – through an order, a form or by hand – enters the automation.
- New form submission (Fluent Forms category): for free sign-ups through a registration form.
- Subscription activated (WooCommerce category): if the access belongs to a running subscription.
Step 4: decide who the automation applies to #
You now arrive at the settings screen of the trigger. Here you set out exactly which purchase it concerns.

In the picture: the trigger settings: name (1), target product (2), purchase type (3), the repeat tick box (4) and save (5).
- Give the automation a name you will recognise later, for example Give access to Poppyz – Masterclass Landscape Painting. This name is for you alone.
- Under Target products you choose the product that grants the access. This is the most important setting: if you leave it empty, every order in your shop enters this automation and everyone gains access to that course. So always choose your product deliberately.
- Under purchase type you leave Any type of purchase as it is. Only if you want to give access exclusively to new customers do you choose something else.
- Run the automation more than once for a contact. This box is unticked by default, and that is precisely why a returning customer sometimes gets nothing on their second order: anyone who has already been through this automation once is skipped. If you sell something the same person can buy more than once, separate modules or a renewal for example, tick this box.
- Click Save settings.
You leave the Subscription status option above it on Subscribed. That puts the buyer in your CRM as a subscribed contact straight away.
Step 5: add the webhook action #
You now see your automation as a diagram: the trigger at the top, and below it a + with which you add steps. Click that + below the trigger.

In the picture: search for webhook (1) and choose the Outgoing webhook block (2).
- Type webhook in the search field. That saves you scrolling through the whole list of actions.
- Choose the block Outgoing webhook (Send data to an external server using the GET or POST method). This is the block that sends the data to Poppyz.
Step 6: fill in the webhook settings #
This is the heart of the integration. Copy the settings exactly as below.

In the picture: the completed settings screen of the outgoing webhook. The numbers come back in the explanation below.
- Internal label: a recognisable name for this step, for example Webhook Poppyz – Masterclass Landscape Painting. Purely for you, the customer never sees it.
- Method for sending data: choose POST method. Poppyz expects the data this way.
- External URL: paste the address you built in step 1 here, including the course number at the end.
- Request format: choose Send as form method. This is an important one: with the default setting (JSON format) Poppyz does not understand the data.
- Request body: choose Custom data. With the other option (Full contact data (raw)) you send the whole contact profile along, and Poppyz cannot use that.
- Request body data: here you decide which fields are sent along. On each line, enter the name of the field on the left and the value on the right. With Add more you create extra lines.
- Request headers: leave this on No headers. No extra headers are needed.
- Send data as a background process: leave this box ticked. Your customer then does not have to wait for the course environment during checkout.
- Click Save settings. Next to that button is Send test webhook, which sends a test request straight away (see the next step).
You fill in the four lines under Request body data like this:
| Data key | Data value | What it does |
|---|---|---|
email |
{{contact.email}} |
The email address of the buyer. Poppyz creates the account on it, or finds an existing account with it. |
name |
{{contact.full_name}} |
The full name, so that the participant is addressed properly. |
key |
your own connection key | The key from your Poppyz environment. Without this code, Poppyz refuses the registration. |
amount |
0.00 |
The amount recorded with the registration. A fixed value is fine. |
Copy the merge codes exactly as they appear above (with double curly brackets), or click the { } icon after the field and choose the code from the list. Make sure the field names on the left are written exactly like this: lower case, no spaces.
Step 7: testing and switching on #
Test first, and only then open it up to your customers.
- In the webhook screen, click Send test webhook. Then check in the admin area of your course environment whether the user is on the right course. Delete that test user again afterwards.
- Do you want to test the whole route, from order to course access? Then temporarily put a test product under Target products (step 4) that only you can order, place an order yourself and check the result. Put the real product back afterwards. Do not do this with the automation on Draft: an automation that is not published does nothing at all, so you cannot test it then either.
- Finally, set the automation to Published with the switch in the top right.

In the picture: the finished automation: status Published (1), the trigger (2) and the webhook action (3).
- The status Published. If it is on Draft, nothing happens. So do not forget this switch.
- The trigger: the order that starts the automation.
- The webhook action: the step that sends the data to your course environment. Click it to open the settings again.
From now on it runs by itself. Under Reports (top right in the automation) you see how many customers have gone through it.
More than one course #
Every course has its own number, and therefore its own webhook address. If you sell several courses, create a separate automation for each one: the same set-up, a different product under Target products and a different course number at the end of the URL. Give them a clear name and it stays easy to follow.
Does one product give access to several courses? Then add several webhook actions one below the other in the same automation, each with its own address.
Would you rather keep everything inside Autorespond? #
Autorespond also has an extension of its own for courses and community: Community & courses. With it, your members, your community and your course material sit in the same environment as your webshop, your contacts and your emails. You then no longer need an integration: in your automation you do not choose a webhook, but the ready-made actions Enrol in courses or Add to space. Your participant also logs in at the same place where they ordered. You can read how to manage access there with tags in Access management in the community: member levels with tags and automatic access.
Frequently asked questions #
The customer is not getting access. What now? #
Check these points, in this order. Is the automation set to Published? This is by far the most common cause. Is the URL completely right, including the course number and without a space or full stop copied along with it? Is the right product under Target products? Is Request format set to Send as form method and Request body to Custom data? And are all four lines (email, name, key, amount) in the table? If all of that is right and still nothing happens, check with Poppyz whether your connection key is still valid and whether the address for your environment is correct.
A returning customer orders again and gets nothing. #
That is almost always down to one tick box: Run the automation more than once for a contact for this event, at the bottom of the trigger (step 4). It is unticked by default, which means someone who has already been through this automation is skipped on a following order. The webhook is then not sent.
Does the customer get their login details automatically? #
Yes, that email comes from your course environment itself; you do not have to set anything up for it in Autorespond. If the customer already had an account there, the course is added to that existing account and usually no new email follows. If you do want to send such a person something, add an email of your own below the webhook action in the same automation.
The buyer uses a different email address in the webshop than in the course environment. #
Then a second account is created, because the email address is what the link is based on. In that case, ask the customer to order with the same address, or change the address in the course environment afterwards.
Can I also revoke the access on a refund? #
Not with this integration: the traffic goes one way, and the webhook only knows “grant access”. On a refund or a chargeback you remove the participant from the course by hand in your course environment. If you want a signal for that, create a second automation with the trigger Order refunded that sends you an email.
Does this work for free participation as well? #
Yes. In that case use the trigger New form submission (for sign-ups through a form) or Tag applied (if you decide yourself who gains access). The rest of the settings stay exactly the same.
Can I see what the course environment sent back? #
Yes. Autorespond stores the response with the webhook step of that contact, visible in the progress of the contacts that have gone through the automation. If something went wrong, the error message is there.