In this tutorial I will walk thru how you can sell eSIMs on your Shopify store with Make.com (Integromat). Make.com is a no code platform similar to Zapier, which lets you connect and exchange data between various apps.
Updated: July 29, 2024
If you want a ready built Shopify store and integration, learn more.
Getting Started
Here’s what we will cover:
- Importing eSIM products via CSV for Shopify
- Setting up a dummy payment gateway
- Getting the Make.com eSIM application and API keys
- Connecting and testing the Make scenario
- Making a complete purchase with email delivery of the eSIM
What’s needed
To complete this tutorial you’ll need a few things first:
- A Make.com account
- Installation of the eSIM app for Make
- A public Shopify store or private developer account
- A funded eSIM Access account – (to make live but refundable purchases)
eSIM Access set up
You’ll need to create your eSIM Access account. Here is where you can source regional and local eSIMs. After you sign up, you can make a deposit of $10 to cover live eSIM purchases. Don’t worry, you can cancel uninstalled eSIMs and your balance refunded.
Shopify
Firstly we’ll make sure the store is set up and then do a product import and finally set up API key access for Make. You will be responsible for your theme, connecting payment gateways and other Shopify settings.
If you don’t have a live store, you’ll want to start with a Shopify development store.

Importing Products
In the Products section of admin view of the site, you can find the Import button at top left. This will open and allow you to upload a CSV file.


The eSIM Access CSV regularly updated and includes the following:
- Image Src: Country flag SVG image
- Variant Price: Includes 30% margin on top of our list price
- Cost per item: Is the list price
- Published: Set to True ( change this if you’re not ready to share publicly)
- Status: Product set to Active status ( change this if you’re not ready to share publicly)
- Handle: Product named after country or region, using variations for the different plan sizes
- SKU: is the product Id that is required for order
You can change text and price fields at your discretion. The full CSV gives about 800 eSIM plans and took about 15 minutes to import.

Select the CSV file:

Preview of the Import:

Once imported you should have populated your product list to look like this:

Setting the dummy payment
You’ll need to set up the Bogus gateway to process payments in test mode.

In Checkout settings >> As a digital product, we can auto fulfill. Then we’ll archive the order after the eSIM is delivered.

Webhooks
Now it is time to set up a webhook for a paid order notification from Shopify to start the eSIM procurement process. More about the Make application for eSIM. Make.com also has a tutorial for Shopify connections.
First step is to create a brand new Make.com scenario. Scenarios are similar to Zaps in Zapier.

There are two ways for Make to learn of a new Shopify paid order. The first is with API request on a schedule. This involves pinging Shopify on a regular basis, looking for a new order. As Make charges for these operations, you will incur more cost with this method.
The second option is to sit back and wait for Shopify to push a New Payment notice to your webhook endpoint. Because it uses les resources, this is the method we will use. Keep in mind there are tradeoffs with both, and you might want to learn more about API request vs. webhooks.

We will create a Custom Webhook with a unique URL just for waiting on these Shopify orders. Once created and named, copy the unique make.com link and we’ll head back to Shopify.

In Shopify, go to Settings >> Notifications >> Webhooks

You’ll want to choose the Order Payment event, JSON and paste in your URL.

Once saved, you will be sending order payment notifications to Make.com. We need to make a test so that Make has some data to work with, so click the “Send test notification” button.

If it worked, the Make Webhook module will now say “Successfully determined”

If you view the logs of your new webhook, you will see a JSON payload of order data sent from Shopify. This will be what we work with to make an eSIM order.

Now it is time to add our next step, the eSIM order.
Make.com eSIM Access connector
Click the “+” in Favorites and search for the “eSIM” module. Add this eSIM connector app to the scenario. If you you have not set up your authentication for your eSIM connection yet jump over to this post and follow the setup guide.
Once authentication is set up, your key will be saved and make orders against your eSIM Access account. If you have a balance already, you will be able to make orders, if your balance is low, you’ll want to add funds to continue. In our example we add the Get Account Balance to test our connection and check our balance at eSIM Access.com
Add the Order a Profile module. We fill in some manual data to create an order. Use any text for Transaction ID ( later this will be the Shopify ID variable), Number of eSIMs to order set to 1 and use a Package code of US_1_7 which corresponds to a USA 1GB 7 Day eSIM. This will be a live order in your account, which you can refund.
Run the module manually to get an Order Number for use in the next step.

Now take the order number, and add the next module – “Get an eSIM by Order Number“. If you get an output bundle containing an eSIM transaction number and eSIM details, you’ve completed a successful eSIM order.
Now time to map the variables that are sent to your Webhook. It easiest if you go make a test order at Shopify now, so your webhook will receive actual order data. With the order data we have from Shopify we are going to pull out 3 variables to make an order – ID, Quantity and SKU. For the Package field.
ID in this case is the Shopify order ID. SKU is the Slug of the package we will order.

And for Get eSIM module, use Order No:

You now have completed the order of an eSIM. To be sure you leave enough time for the eSIM to be prepared, add a 30 second wait time. Use the Make > Tools > Sleep action and wait 30 seconds for eSIM creation to complete. In nearly all cases eSIMs are created in 30 seconds or less, but the 2 step method will make certain the eSIM is created before it is requested. Also it is good to check your balance before each order, to see if you have enough funds to make and order.
Here is our current scenario after these steps:

Keep in mind this simple process, will deliver only 1 eSIM per order, but a more complex process can handle a multi-esim order.
Delivering the eSIM
We now have received notification of a paid order, sent that order to eSIM Access and have retrieved the purchased eSIM. It’s now time to deliver the eSIM to the customer and update the Shopify order.
Email the customer
There are many email options that connect to Make.com. Choose one email option you are able to configure. Next, add it to your scenario:

The very basic needs are the email, and the Short Url:

Update Shopify Order
Now time to connect your Shopify account to Make.com. Once connected fin the “Update an Order” option. This will give you the ability to update your Shopify order history so you know what product was purchased.

Use the Shopify order number ( not the 4 digit order_number) received from the webhook which is the Id from step 1. Then you can fill in notes section. I like to use the ICCID and Short URL, which will tell you exactly which they purchased and also allow you to look up the order in the eSIM Access portal. Additionally, I like to put the product name as the order tag as that is viewable on the all orders page. Click to view a full view of this animation.

You can customize the Shopify update how you wish. At this stage our scenario looks like this:

Make a test order
Now it is time to make a test order. Make your scenarios is turned on and saved.
Head to your Shopify store url for the test.

After your test purchase with your bogus Shopify gateway, both scenarios should fire. First a Shopify order is paid, then eSIM is created and the eSIM is retrieved.
Finally the Shopify order is updated and an email containing the eSIM is sent out:

Yeah!! Completed eSIM deliver process!
Even better email
For a more reliable Email Service Provider connect a Brevo account to the Brevo module and use this template for the following email:

There are many customization options that can be done on top of this basic process. Admin emails, Shopify updates, low balance notifications and more. With our Shopify no code integration, you can customize your eSIMs delivery process without the rigid nature of a plug-in.
Going further
While this process was for Shopify, you can use the same for Woocommerce, Wix, Sellix or just about any other modern ecommerce platform. As long as you can retrieve a “paid order” web hook or access the API, delivering the customer there eSIM is possible with the eSIM Application for Make.com.




