Sell eSIMs on Shopify with Make.com

This step by step guide will allow you to add eSIM sales to a Shopify store.

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:


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.

Shopify developer stores.

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.

eSIM Access Shopify CSV File

Open the Shopify CSV Google Sheet, and then download and edit a CSV file locally. You can upload this directly or you can import it back to Sheets or Excel and make changes in things like pricing, product names and product descriptions. You might consider making a Google Sheet where you can regularly import our latest CSV and then apply your modifications automatically.

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:

Shopify import preview.

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.

Start a new Make.com scenario.

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.

Add the Webhook module.

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.

Copy the unique Webhook URL.

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

In Shopify find the Webhook section.

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

Add the Make.com webhook to Shopify.

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.

Send a test trigger to the webhook url

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

Check in Make.com that the data structure was 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.

Review all the data sent to Make.com from Shopify

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.

Manually make and order and then retrieve the eSIM order with OrderNo to verify working eSIM order retrieval.

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:

Add the Order No from the prior eSIM step to retrieve the order.

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:

Now, we have a scenario waiting for a order with paid status, that will first make a balance check, then make an order, and then retrive the eSIM order.

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:

View the full size animation. Add an email service to email the customer.

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

Send the user 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.

Select Update an Order ( Note: Shopify now has a V3 API so using that will be different than their V2 shown here )

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:

Completed delivery scenario.

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.

Dummy Order

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.

Learn More

Discover more from eSIM Access

Subscribe now to keep reading and get access to the full archive.

Continue reading