Connect Woocommerce and Sendinblue to send order confirmation email with complex attributes

Hello :wave:

I want to create a transactional email to confirm each new order for my Woocommerce website. I use Sendinblue for emailing. The available attributes using Sendinblue’s plugin for Woocommerce are poor. I need more details (for example, custom fields informations).

I need to make a loop in my Sendinblue email template to show each item in the order.
image

I want to show attributes like {{ item.name }} {{ item.quantity }} {{ item.total }} …

For example, an order with 2 items in the output of the Woocommerce “Whatch orders” connector for Make :

In the Sendinblue connector “Send an email”, in the advanced settings “params”, I put this array called lineItems :
image

But when I watch the result (input in the Sendinblue “Send an email” connector), I suppose that it’s just a string : [Collection]

How can I send the entire array lineItems in Sendinblue ?

(I tried toArray() and it did not work).

Thanks for your help !! :pray:

Hey @Sylvain you need to use an “iterator” and a “text aggregator” to get what you are looking for.
The iterator goes over the array of data, and then the text aggregator adds up all variables together.

Thanks Bjorn.drivn,

It works to show simple text but I would like to use Sendinblue drag & drop editor’s feature that permits to make a loop : I can create a html bloc with complex attributes like {{ item.name }}, {{ item.quantity }}, {{ item.total }}, the url of the item in my shop, the url of the picture of my item, etc and to loop.

Here is the Sendinblue documentation : https://help.sendinblue.com/hc/en-us/articles/360000591680

It is a for-loop (https://help.sendinblue.com/hc/en-us/articles/4403454001426-Advanced-Repeat-a-block-of-items-using-for-loops ) like that :

{% for VARIABLE in params. PARAMETERNAME %}
{{ VARIABLE .name }} - {{ VARIABLE .price }}
{% endfor %}

But in drag&drop editors it’s a graphical interface :

image

Then I think I need to send an array of my items in “params“. But I don’t know if the “send an email” connector in Make for Sendinblue permits that ?

Hey @Sylvain I missed this one, were you able to solve it:?

Hello,

Not ATM. I don’t know how to find if the “send an email” connector in Make for Sendinblue permits to send an array. I think the answer is NO :

In this case, I think the solution can be very complex !

Thanks !