Shopify

Getting Started with Shopify

Shopify modules allow you to monitor, create, update, delete, and search orders, products, product variants, product images, customers, articles, pages, refunds, inventory, abandoned checkouts, and transactions on your Shopify account.

Prerequisites

  • A Shopify account

In order to use Shopify with Integromat, it is necessary to have a Shopify account. If you do not have one, you can create a Shopify account at www.shopify.com/signup

The module dialog fields that are displayed in bold (in the Integromat scenario, not in this documentation article) are mandatory!

Connecting Shopify to Integromat

To connect your Shopify account to Integromat, follow these steps:

1. Open the desired module, and Create a connection dialog via the Add button.

2019-03-20_15_20_14-Integration_Shopify___Integromat.png

 

2. Enter the connection name and myshopify.com subdomain

If the address is, for example, https://integromatdoc.myshopify.com/, then the Myshopify subdomain field is integromatdoc.

After you click the Continue button, Integromat will redirect you to the Shopify website, where you will be prompted to install the Integromat app.

3. Install the Integromat app by clicking on the Install unlisted app button.

2019-03-20_15_39_38-integromatdoc___Authorize_Integromat___Shopify.png

The connection to your Shopify account is now established.

Creating Fulfillment Using Integromat

To create a fulfillment, you'll need to identify line items in an order and retrieve the line item's variant and inventory level.

Add the following modules to your scenario to create the fulfillment:

1. Get an Order or Watch Orders - to retrieve all line items of the order that you want to create fulfillment for.

2. Get Product Variant - to find the specific variants that are associated with the inventory item that you want to fulfill. You can find the Inventory item ID in the module's output.

2019-09-05_13_11_49-Integration_Shopify___Integromat.png

3. Search for Inventory Levels - to retrieve the inventory level for that item and the location where it's stocked.
You can see in the module's output that the variant is stocked at one location. The next step shows how to create a fulfillment from the 20748533856 location.

2019-09-05_13_42_56-Integration_Shopify___Integromat.png

4. Create a Fulfillment - to create the fulfillment.

2019-09-05_13_51_30-Integration_Shopify___Integromat.png

Orders

(Reference: help.shopify.com/en/api/reference)

Create an Order

ConnectionEstablish a connection to your Shopify account.
Line items

Product ID
The ID of the product that the line item belongs to.

Variant ID
The ID of the product variant.

Title
The title of the product.

Quantity
The number of items that were purchased.

Price
The price of the item before discounts have been applied in the shop currency.

Sku
The item's SKU (stock keeping unit).

Tax lines
A list of tax line objects, each of which details a tax applied to the item.

  • Title: The name of the tax.
  • Price: The amount added to the order for this tax in the shop currency.
  • Rate: The tax rate applied to the order to calculate the tax price.

Gift card
Whether the item is a gift card or not. If enabled, then the item is not taxed or considered for shipping charges.

Grams
The weight of the item in grams.

Requires shipping
Select whether the item requires shipping.

Vendor
The name of the item's supplier.

Customer IDEnter (map) the customer ID.
EmailThe customer's email address.
LocationSelect the physical location where the order was processed.
Billing Address
  • Address1: The street address of the billing address.
  • Address2: An optional additional field for the street address of the billing address.
  • City: The city, town, or village of the billing address.
  • Company: The company of the person associated with the billing address.
  • Country: The name of the country of the billing address.
  • Country_code: The two-letter code (ISO 3166-1 format) for the country of the billing address.
  • First_name: The first name of the person associated with the payment method.
  • Last_name: The last name of the person associated with the payment method.
  • Latitude: The latitude of the billing address.
  • Longitude: The longitude of the billing address.
  • Name: The full name of the person associated with the payment method.
  • Phone: The phone number for the billing address.
  • Province: The name of the region (province, state, prefecture, …) of the billing address.
  • Province_code: The two-letter abbreviation of the region of the billing address.
  • Zip: The postal code (zip, postcode, Eircode, …) of the billing address.
Shipping Address
  • Address1: The street address of the shipping address.
  • Address2: An optional additional field for the street address of the shipping address.
  • City: The city, town, or village of the shipping address.
  • Company: The company of the person associated with the shipping address.
  • Country: The name of the country of the shipping address.
  • Country_code: The two-letter code (ISO 3166-1 format) for the country of the shipping address.
  • First_name: The first name of the person associated with the shipping address.
  • Last_name: The last name of the person associated with the shipping address.
  • Latitude: The latitude of the shipping address.
  • Longitude: The longitude of the shipping address.
  • Name: The full name of the person associated with the payment method.
  • Phone: The phone number for the shipping address.
  • Province: The name of the region (province, state, prefecture, …) of the shipping address.
  • Province_code: The two-letter abbreviation of the region of the shipping address.
  • Zip: The postal code (zip, postcode, Eircode, …) of the shipping address.
Shipping Lines

Details of the shipping method used. Each object has the following properties:

  • Code: A reference to the shipping method.
  • Discounted_price: The price of the shipping method after discounts.
  • Discounted_price_set: The price of the shipping method after discounts in shop and presentment currencies.
  • Price: The price of this shipping method in the shop currency. Can't be negative.
  • Price_set: The price of the shipping method in shop and presentment currencies.
  • Source: The source of the shipping method.
  • Title: The title of the shipping method.
  • Tax_lines: A list of tax line objects, each of which details a tax applicable to this shipping line.
  • Carrier_identifier: A reference to the carrier service that provided the rate. Present when the rate was computed by a third-party carrier service.
  • Requested_fulfillment_service_id: A reference to the fulfillment service that is being requested for the shipping method. Present if the shipping method requires processing by a third party fulfillment service; null otherwise.
Financial Status

Select the status of payments associated with the order. Can only be set when the order is created.

  • Pending: The payments are pending. Payment might fail in this state. Check again to confirm that the payments have been paid successfully.
  • Authorized: The payments have been authorized.
  • Partially paid: The order has been partially paid.
  • Paid: The payments have been paid.
  • Partially refunded: The payments have been partially refunded.
  • Refunded: The payments have been refunded.
  • Voided: The payments have been voided.
Fulfillment status

The order's status in terms of fulfilled line items:

  • Fulfilled: Every line item in the order has been fulfilled.
  • Null: None of the line items in the order have been fulfilled.
  • Partial: At least one line item in the order has been fulfilled.
  • Restocked: Every line item in the order has been restocked, and the order canceled.
Discount codes

A list of discount codes to apply to the order:

  • Amount: The value of the discount to be deducted from the order total. The type field determines how this value is calculated. After an order is created, this field returns the calculated amount.
  • Code: The discount code.
  • Type: The type of discount. Default value: fixed_amount. Valid values:
    • Fixed amount: Applies amount  as a unit of the store's currency. For example, if amount is 30, and the store's currency is USD, then 30 USD is deducted from the order total when the discount is applied.
    • Percentage: Applies a discount of the amount as a percentage of the order total.
    • Shipping: Applies a free shipping discount on orders that have a shipping rate less than or equal to the amount. For example, if the amount is 30, then the discount will give the customer free shipping for any shipping rate that is less than or equal to $30.
Tags

Tags attached to the order, formatted as a string of comma-separated values. Tags are additional short descriptors, commonly used for filtering and searching. Each individual tag is limited to 40 characters in length.

Note

An optional note that a shop owner can attach to the order.

Note attributes

Extra information that is added to the order. Appears in the Additional details section of an order details page. Each array entry must contain a hash with name and value keys.

Buyer accepts marketing

Select whether the customer consented to receive email updates from the shop.

Currency

The three-letter code (ISO 4217 format) for the shop currency. E.g., USD.

Inventory behavior

The behavior to use when updating inventory:

  • Bypass: Do not claim inventory.
  • Decrement_ignoring_policy: Ignore the product's inventory policy, and claim inventory.
  • Decrement_obeying_policy: Follow the product's inventory policy, and claim inventory, if possible.
Send receipt

Select whether or not to send an order confirmation to the customer.

Send fulfillment receipt

Select whether or not to send a shipping confirmation to the customer.

Update an Order

Updates a selected order.

ConnectionEstablish a connection to your Shopify account.
Order IDEnter the ID of the order you want to update/change.

Please refer to the Create an Order section of this article for the Update an Order module fields description.

Delete an Order

Deletes a selected order.

ConnectionEstablish a connection to your Shopify account.
Order IDEnter the ID of the order you want to delete.

Get an Order

Retrieves the order details.

ConnectionEstablish a connection to your Shopify account.
Order IDEnter the ID of the order you want to retrieve information about.

Watch Orders

Retrieves order details when a new order is created.

ConnectionEstablish a connection to your Shopify account.
Status

Filter orders by their status:

  • Open: Show only open orders.
  • Closed: Show only closed orders.
  • Canceled: Show only canceled orders.
  • Any: Show orders of any status.
Financial status

Filter orders by their financial status:

  • Authorized: Show only authorized orders.
  • Pending: Show only pending orders.
  • Paid: Show only paid orders.
  • Partially paid: Show only partially paid orders.
  • Refunded: Show only refunded orders.
  • Voided: Show only voided orders.
  • Partially refunded: Show only partially refunded orders.
  • Any: Show orders of any financial status.
  • Unpaid: Show authorized and partially paid orders.
Fulfillment status

Filter orders by their fulfillment status:

  • Shipped: Show orders that have been shipped.
  • Partial: Show partially shipped orders.
  • Unshipped: Show orders that have not yet been shipped
  • Any: Show orders of any fulfillment status.
LimitThe maximum number of orders Integromat will work with during one cycle.

Products

Create a Product

ConnectionEstablish a connection to your Shopify account.
TitleThe name of the product.
Product typeA categorization for the product used for filtering and searching products.
Body HTMLA description of the product. Supports HTML formatting.
VendorThe name of the product's vendor.
TagsA string of comma-separated tags that are used for filtering and search. A product can have up to 250 tags. Each tag can have up to 255 characters.
PublishedSelect whether the product is published or not.
Published atThe date and time (ISO 8601 format) when the product was published. Leave empty to have the product unpublished from the Online Store channel. Please check the list of supported date formats.
Published scope

Whether the product is published to the Point of Sale channel. Valid values:

  • web: The product is published to the Online Store channel, but not published to the Point of Sale channel.
  • global: The product is published to both the Online Store channel and the Point of Sale channel.
HandleA unique, human-friendly string for the product. Automatically generated from the product's title. Used by the Liquid templating language to refer to objects.
OptionsThe custom product property names like SizeColor, and Material. You can add up to 3 options with up to 255 characters each.
Variants

A list of product variants, each representing a different version of the product.

To retrieve the presentment_prices property on a variant, include the request header 'X-Shopify-Api-Features': 'include-presentment-prices'.

ImagesA list of product images, each one representing an image associated with the product.
Template suffixThe suffix of the Liquid template used for the product page. If this property is specified, then the product page uses a template called "product.suffix.liquid", where "suffix" is the value of this property. If this property is empty, then the product page uses the default template "product.liquid". (default: empty)
Metafields global title tagThe name of the product used for SEO purposes. Generally added to the <meta name='title'> tag.
A description of the product used for SEO purposes. Generally added to the <meta name='description'> tag.

Update Product

ConnectionEstablish a connection to your Shopify account.
Product IDEnter the ID of the product you want to update/change.

Please refer to the Create a Product section of this article for the Update a Product module fields description.

Delete a Product

ConnectionEstablish a connection to your Shopify account.
Product IDEnter the ID of the product you want to delete.

Get a Product

Retrieves details about a product.

ConnectionEstablish a connection to your Shopify account.
Product IDEnter the ID of the product you want to retrieve the information about.

Search for Products

ConnectionEstablish a connection to your Shopify account.
TitleFilter results by product title.
VendorFilter results by the product vendor.
HandleFilter results by product handle.
Product typeFilter results by product type.
Status

Return products by their published status:

  • Published: Show only published products.
  • Unpublished: Show only unpublished products.
  • Any: Show all products.
Limit

The maximum number of products Integromat will work with during one cycle.

Create a Product Variant

A variant can be added to a Product Resource to represent one version of a product with several options. The Product Resource will have a variant for every possible combination of its options. Each product can have a maximum of three options and a maximum of 100 variants.

ConnectionEstablish a connection to your Shopify account.
Product IDEnter (map) the product ID.
PriceThe price of the product variant.
OptionThe custom properties that a shop owner uses to define product variants. You can define three options for a product: option1option2option3.
SKUA unique identifier for the product variant in the shop. Required in order to connect to a FulfillmentService.
BarcodeEnter the barcode, UPC, or ISBN number for the product.
Fulfillment serviceThe fulfillment service associated with the product variant. It represents a third-party warehousing service that prepares and ships orders on behalf of the store owner. Each fulfillment service is associated with its own location. When you create a fulfillment service, a new location is automatically created and associated with it. Valid values: manual or the handle of a fulfillment service.
Inventory managementThe fulfillment service that tracks the number of items in stock for the product variant. If you track the inventory yourself using the admin, then set the value to "shopify". Valid values: shopify or the handle of a fulfillment service that has inventory management enabled. Must be the same fulfillment service referenced by the fulfillment_service property.
Inventory policy

Select whether customers are allowed to place an order for the product variant when it's out of stock. Valid values:

  • deny: Customers are not allowed to place orders for the product variant if it's out of stock.
  • continue: Customers are allowed to place orders for the product variant if it's out of stock.
GramsThe weight of the product variant is in grams.
The original price of the item before an adjustment or a sale.

A list of the variant's presentment prices and compare-at prices in each of the shop's enabled presentment currencies. Each price object has the following properties:

  • currency_code: The three-letter code (ISO 4217 format) for one of the shop's enabled presentment currencies.
  • amount: The variant's price or compare-at price in the presentment currency.
Requires the header 'X-Shopify-Api-Features': 'include-presentment-prices'.
Position

The order of the product variant in the list of product variants. The first position in the list is 1.

Image IDThe unique numeric identifier for a product's image. The image must be associated with the same product as the variant.
Taxable

Whether a tax is charged when the product variant is sold or not.

Tax code

This parameter applies only to the stores that have the Avalara AvaTax app installed. Specifies the Avalara tax code for the product variant.

Whether a customer needs to provide a shipping address when placing an order for the product variant.

Weight

The weight of the product variant in the unit system specified with weight_unit.

Weight unit

The unit of measurement that applies to the product variant's weight. If you don't specify a value for weight_unit, then the shop's default unit of measurement is applied. Valid values: gkgoz, and lb.

Update a Product Variant

ConnectionEstablish a connection to your Shopify account.
Product IDEnter the ID of the product whose variant you want to update/change.
Product Variant IDEnter the ID of the product variant you want to update/change.

Please refer to the Create a Product Variant section of this article for the Update a Product Variant module fields description.

Delete a Product Variant

ConnectionEstablish a connection to your Shopify account.
Product IDEnter the ID of the product whose variant you want to delete.
Product Variant IDEnter the ID of the product variant you want to delete.

List Product Variants

Returns all variants.

ConnectionEstablish a connection to your Shopify account.
Product IDEnter the ID of the product whose variant you want to retrieve.

Get a Product Variant

Returns a product variant's details.

ConnectionEstablish a connection to your Shopify account.
Product Variant IDEnter the ID of the product variant you want to retrieve the information about.

Product Images

Upload a product image

ConnectionEstablish a connection to your Shopify account.
Product IDThe ID of the product associated with the image.
DataMap the image file data.
Alternate textEnter the alt tag content.
PositionThe order of the product image in the list. The first product image is at position 1 and is the "main" image for the product.

Delete a Product Image

ConnectionEstablish a connection to your Shopify account.
Product IDThe ID of the product associated with the image you want to delete.
Product image IDThe ID of the product image you want to delete.

List Product Images

Returns all product images of the product.

ConnectionEstablish a connection to your Shopify account.
Product IDThe ID of the product whose images you want to retrieve.

Customers

Create a Customer

ConnectionEstablish a connection to your Shopify account.
First nameThe customer's first name.
Last nameThe customer's last name.
EmailThe unique email address of the customer. Attempting to assign the same email address to multiple customers returns an error.
Phone

The unique phone number (E.164 format) for this customer. Attempting to assign the same phone number to multiple customers returns an error. The property can be set using different formats, but each format must represent a number that can be dialed from anywhere in the world. The following formats are all valid:

  • 6135551212
  • +16135551212
  • (613)555-1212
  • +1 613-555-1212
Password

Create a password for the customer.

Addresses

A list of the ten most recently updated addresses for the customer. Each address has the following properties:

  • Address1: The customer's mailing address.
  • Address2: An additional field for the customer's mailing address.
  • City: The customer's city, town, or village.
  • Company: The customer's company.
  • Country: The customer's country.
  • Country_code: The two-letter country code corresponding to the customer's country.
  • Country_name: The customer's normalized country name.
  • Customer_id: A unique identifier for the customer.
  • Default: Whether this address is the default address for the customer.
  • First_name: The customer's first name.
  • ID: A unique identifier for the address.
  • Last_name: The customer's last name.
  • Name: The customer's first and last names.
  • Phone: The customer's phone number at this address.
  • Province: The customer's region name. Typically a province, a state, or a prefecture.
  • Province_code: The code for the region of the address, such as the province, state, or district. For example QC for Quebec, Canada.
  • Zip: The customer's postal code, also known as zip, postcode, Eircode, etc.
Verified email

Whether the customer has verified their email address.

Tax exempt

Whether the customer is exempt from paying taxes on their order. If enabled, then taxes won't be applied to an order at checkout. If disabled, then taxes will be applied at checkout.

Whether the customer has consented to receive marketing material via email.

Note

A note about the customer.

Tags

Tags that the shop owner has attached to the customer, formatted as a string of comma-separated values.

Send email welcome

If disabled, sending the welcome email will be skipped.

CurrencyThe three-letter code (ISO 4217 format) for the currency that the customer used when they paid for their last order. Defaults to the shop currency. Returns the shop currency for test orders.

Update a Customer

ConnectionEstablish a connection to your Shopify account.
Customer IDEnter the ID of the customer you want to update/change.

Please refer to the Create a Customer section of this article for the descriptions of the Update a Product module fields.

Delete a Customer

ConnectionEstablish a connection to your Shopify account.
Customer IDEnter the ID of the customer you want to delete.

Get a Customer

ConnectionEstablish a connection to your Shopify account.
Customer IDEnter the ID of the customer you want to retrieve information about.

Search for Customers

Searches for customers that match a supplied query, and returns customer details.

ConnectionEstablish a connection to your Shopify account.
QueryEnter the search query. See the Shopify Searching Your Store help page.
LimitSet the maximum number of customer details Integromat will return in one cycle.

Watch Customers

Triggers when a new customer is added.

ConnectionEstablish a connection to your Shopify account.
LimitSet the maximum number of customers Integromat will return in one cycle.

List Customer Addresses

Retrieves all customer addresses.

ConnectionEstablish a connection to your Shopify account.
LimitSet the maximum number of addresses Integromat will return in one cycle.

 

Sometimes it is necessary to extend existing permissions in order to work with other objects (orders, customers, products, etc.)

KJAOwOOS9E.gif

Articles

Create an Article

Creates an article in the shop's blog.

ConnectionEstablish a connection to your Shopify account.
BlogSelect the blog you want to create an article for.
TitleEnter the title of the article.
Body HTMLThe text of the body of the article, complete with HTML markup. E.g.,
<p>Welcome to my new blog!</p>
Template suffixThe name of the template an article is using if it's using an alternate template. If an article is using the default article.liquid template, then leave this empty.
Summary HTMLA summary of the article, complete with HTML markup. The summary issued by the online store theme displays the article on other pages, such as the home page or the main blog page.
AuthorThe name of the author of the article.
HandleA human-friendly unique string for the article that's automatically generated from the article's title. The handle is used in the article's URL.
Article is publishedEnable if the article should be visible.
Published atThe date and time (ISO 8601 format) when the article was published. Please see the list of supported date formats.
TagsA comma-separated list of tags. Tags are additional short descriptors formatted as a string of comma-separated values.
Image

An image associated with the article:

  • Data: Map (or enter) image data.
  • Alt: Alternative text that describes the image.

Update an Article

ConnectionEstablish a connection to your Shopify account.
BlogSelect the blog you want to update the article on.
Article IDMap the article ID you want to update.

Please refer to the Create an Article section of this article for the descriptions of the Update an Article module fields.

Delete an Article

ConnectionEstablish a connection to your Shopify account.
BlogSelect the blog you want to delete the article from.
Article IDMap the article you want to delete.

Get an Article

Retrieves an article's details.

ConnectionEstablish a connection to your Shopify account.
BlogSelect the blog that contains the article.
Article IDMap the article you want to retrieve information about.

Search for Article

Searches for the article based on the entered filter.

ConnectionEstablish a connection to your Shopify account.
BlogSelect the blog that contains the article.
TagFilter articles by a specific tag.
AuthorFilter the article search by the author of the article.
HandleFilter articles by a specific handle.
StatusFilter articles by a given published status.
LimitSet the maximum number of search results Integromat will return in one cycle.

Watch Articles

Triggers when a new article is added to a blog.

ConnectionEstablish a connection to your Shopify account.
BlogSelect the blog that contains the article.
TagFilter articles by a specific tag.
AuthorFilter the article search by the author of the article.
StatusFilter articles by a given published status.
LimitMaximum number of articles Integromat will work with during one cycle.

Pages

Create a Page

Creates a page.

ConnectionEstablish a connection to your Shopify account.
TitleEnter the page's title.
Body HTMLThe text content of the page, complete with HTML markup.
AuthorThe name of the person who created the page.
HandleA unique, human-friendly string for the page, generated automatically from its title. In online store themes, the Liquid templating language refers to a page by its handle.
Template suffix
The suffix of the Liquid template being used. For example, if the value is contact, then the page is using the page.contact.liquid template. If the value is an empty string, then the page is using the default page.liquid template.
Page is publishedIf enabled, the created page will be published.

Update a Page

ConnectionEstablish a connection to your Shopify account.
Page ID
Enter (map) the page ID of the page you want to update.

Please refer to the Create a Page section of this article for the Update a Page module fields description.

Delete a Page

ConnectionEstablish a connection to your Shopify account.
Page ID
Enter (map) the page ID of the page you want to delete.

Get a Page

ConnectionEstablish a connection to your Shopify account.
Page ID
Enter (map) the page you want to retrieve information about.

Search for Pages

Searches for pages based on an entered filter.

ConnectionEstablish a connection to your Shopify account.
TitleThe page's title.
HandleA unique, human-friendly string for the page, generated automatically from its title. In online store themes, the Liquid templating language refers to a page by its handle.
StatusFilter pages with a given published status.
LimitSet the maximum number of search results Integromat will return in one cycle.

Watch Pages

Triggers when a new page is added.

ConnectionEstablish a connection to your Shopify account.
StatusRestrict returned pages with a given published status.
LimitSet the maximum number of pages Integromat will work with during one cycle.

Refunds

Get a Refund

Retrieves a specific refund.

ConnectionEstablish a connection to your Shopify account.
Order IDEnter the order ID of the order that the refund is associated with.
Refund IDEnter the ID of the refund that the order adjustment is associated with.

Search for Refunds

ConnectionEstablish a connection to your Shopify account.
Order IDEnter the order ID of the order that the refund is associated with.
In shop currencyIf enabled, amounts in the shop currency for the underlying transaction will be displayed.
LimitSet the maximum number of refunds Integromat will work with during one cycle.

Inventory and Fulfillments

For more information about inventory and fulfillments, please refer to the Shopify API documentation – Managing Fulfillments article.

Search for Inventory Levels

ConnectionEstablish a connection to your Shopify account.
Inventory item IDsThe ID of the inventory item that the inventory level belongs to.
Location IDsSelect the location that the inventory level belongs to.
LimitSet the maximum number of search results returned by Integromat in one cycle.

Create a Fulfillment

Prerequisites: Creating a Fulfillment Using Integromat

Before you create a fulfillment, it's helpful to understand some of the different fulfillment-related resources:

  • Order: Contains information about an order, including an array of the line items that were purchased. Line items contain important fulfillment information, such as the associated variant, the quantity purchased, and the fulfillment status.
  • Location: Represents a geographical location where a line item can be fulfilled from. A fulfillment service always has its own location, and variants managed by the fulfillment service should always be fulfilled from that location.
  • Fulfillment: Represents a shipment of one or more items in an order. It includes the line item that the fulfillment applies to, its tracking information, and the location of the fulfillment.
  • FulfillmentService: Represents a third-party warehousing service that prepares and ships orders on behalf of the store owner. Each fulfillment service is associated with its own location. When you create a fulfillment service, a new location is automatically created and associated with it.
ConnectionEstablish a connection to your Shopify account.
Order IDMap the order ID of the order you want to fulfill.
Location

Select the location that the fulfillment should be processed for.

Tracking numberTracking number provided by the shipping company.
Tracking companyThe name of the tracking company.
When creating a fulfillment for a supported carrier, enter the tracking company name exactly as written in the list below.
  • 4PX
  • APC
  • Amazon Logistics UK
  • Amazon Logistics US
  • Australia Post
  • Bluedart
  • Canada Post
  • China Post
  • Correios
  • DHL Express
  • DHL eCommerce
  • DHL eCommerce Asia
  • DPD
  • DPD Local
  • DPD UK
  • Delhivery
  • Eagle
  • FSC
  • FedEx
  • FedEx UK
  • GLS
  • Globegistics
  • Japan Post (EN)
  • Japan Post (JA)
  • La Poste
  • New Zealand Post
  • Newgistics
  • PostNL
  • PostNord
  • Purolator
  • Royal Mail
  • SF Express
  • Sagawa (EN)
  • Sagawa (JA)
  • Singapore Post
  • TNT
  • UPS
  • USPS
  • Whistl
  • Yamato (EN)
  • Yamato (JA)
Line items IDsEnter the ID of the line items that were purchased.
Tracking URLsThe URLs of the tracking pages for the fulfillment.
Notify customerSelect whether the customer should be notified. If enabled, then an email will be sent when the fulfillment is created or updated.
Variant inventory managementThe name of the inventory management service. E.g., shopify
Shipment status

The current shipment status of the fulfillment. The values are as follows:

  • Label Printed: A label for the shipment was purchased and printed.
  • Label Purchased: A label for the shipment was purchased, but not printed.
  • Attempted Delivery: Delivery of the shipment was attempted, but unable to be completed.
  • Ready for Pickup: The shipment is ready for pickup at a shipping depot.
  • Confirmed: The carrier is aware of the shipment but hasn't received it yet.
  • In Transit: The shipment is being transported between shipping facilities on the way to its destination.
  • Out for Delivery: The shipment is being delivered to its final destination.
  • Delivered: The shipment was successfully delivered.
  • Failure: Something went wrong when pulling tracking information for the shipment, such as an invalid tracking number, or the shipment was canceled.

Create a Fulfillment Service

ConnectionEstablish a connection to your Shopify account.
NameThe name of the fulfillment service as seen by merchants and their customers.
Callback URL
URL of the fulfillment service. States the URL endpoint that Shopify needs in order to retrieve inventory and tracking updates.
Inventory managementEnable if the fulfillment service tracks product inventory and provides updates to Shopify.
Tracking supportEnable if the fulfillment service provides tracking numbers for packages.
LocationSelect the location tied to the fulfillment service.
Required shipping methodEnable this option if the fulfillment service requires products to be physically shipped.
FormatSelect whether the API output format is JSON or XML.

Update a Fulfillment Service

ConnectionEstablish a connection to your Shopify account.
Fulfillment service IDEnter (map) the ID of the fulfillment service.

Please refer to the Create a Fulfillment Service section of this article for the descriptions of the Update a Fulfillment Service module fields.

Delete a Fulfillment Service

ConnectionEstablish a connection to your Shopify account.
Fulfillment service IDEnter (map) the ID of the fulfillment service you want to delete.

Abandoned Checkouts

A checkout is considered abandoned when a customer has entered billing and shipping information but hasn't completed the purchase.

Search for Abandoned Checkouts

ConnectionEstablish a connection to your Shopify account.
StatusSelect to show only checkouts with a given status (default: open):
  • Open: Show only open abandoned checkouts.
  • Closed: Show only closed abandoned checkouts.

LimitSet the maximum number of search results returned by Integromat in one cycle.

Watch Abandoned Checkouts

Triggers when a new abandoned checkout is added.

ConnectionEstablish a connection to your Shopify account.
StatusSelect the status of the abandoned checkout that triggers this module:
  • Open: Show only open abandoned checkouts.
  • Closed: Show only closed abandoned checkouts.

LimitSet the maximum number of abandoned checkouts returned by Integromat in one cycle.

Transactions

Transactions are created for every order that results in an exchange of money.

Create a Transaction

ConnectionEstablish a connection to your Shopify account.
Order IDMap the order you want to create a transaction for.
Kind of transactionSelect the transaction's type. The valid values are as follows:
  • Authorization: Money that the customer has agreed to pay. The authorization period can be between 7 and 30 days (depending on your payment service) while a store waits for a payment to be captured.
  • Capture: A transfer of money that was reserved during the authorization of a shop.
  • Sale: The authorization and capture of a payment performed in one single step.
  • Void: The cancellation of a pending authorization or capture.
  • Refund: The partial or full return of captured money to the customer.

AmountThe amount of money included in the transaction. If you don't provide a value, then it defaults to the total cost of the order (even if a previous transaction has been made towards it).
CurrencyThe three-letter code (ISO 4217 format) for the currency used for the payment.
AuthorizationThe authorization code associated with the transaction.
GatewayThe name of the gateway the transaction was issued through. A list of gateways can be found on Shopify's payment gateways page.
Parent IDThe ID of an associated transaction.
  • For capture transactions, the parent needs to be an authorization transaction.
  • For void transactions, the parent needs to be an authorization transaction.
  • For refund transactions, the parent needs to be a capture or sale transaction.
Test transactionSpecify whether the transaction is a test transaction.
Processed atThe date and time (ISO 8601 format) when a transaction was processed. This value is the date that's used in the analytic reports. By default, it matches the created_at value. If you're importing transactions from an app or another platform, then you can set processed_at to a date and time in the past to match when the original transaction was processed. List of supported date formats.

Other

Make an API Call

Performs a custom API call.

Connection

Select whether you want to make an API call using your private or public app.

URLEnter a path relative to https://{DOMAIN}.myshopify.com/admin/. E.g., products.json.
For the list of available endpoints, refer to the Shopify REST API Documentation.
Method

Select the HTTP method you want to use:

GET
to retrieve the entry information.

POST
to create a new entry.

PUT
to update/replace the existing entry.

PATCH
to make a partial entry update.

DELETE
to delete the entry.

HeadersEnter the desired request headers. You don't have to add authorization headers; we've already done that for you.
Query StringEnter the request query string.
BodyEnter the body content for your API call.

Example of Use - List Products

The following API call returns all products in your Shopify account:

URL:
products.json

Method:
GET

2020-08-28_17_04_17-Integration_Google_Forms___Integromat.png

The result can be found in the module's Output under BundleBody > products
In our example, 5 products were returned:

2020-08-28_17_08_43-Integration_Google_Forms___Integromat.png

Private App Connection

To establish a private app connection, you need to create a private app to obtain the API Key and Password.

1. Log in to your Shopify administration (https://{yourShopifyDomain}.myshopify.com/admin).

2. Navigate to Apps > Manage private apps.

tew8CkAmbA.gif

3. Click the Create new private app button (chrome_BRbT9G3pQa.png).

4. Fill in the required fields, click Save and Create App.

Xvom4tWQPR.gif

5. Find the generated API Key and Password in the Admin API section.

chrome_VCvkMG51FB.png

6. Go to Integromat, and open the Make an API Call module's Create a connection dialog for the Shopify private app.

7. Enter the Domain (if your Shopify online store address is, for example, xyz.myshopify.com, enter only "xyz".) and API Key and Password provided in step 5 to the respective fields, and click the Continue button to establish the connection.

The connection has been established. You can proceed with setting up the Make an API Call module for the private app.

Public App Connection

Use this to connect your Public App created in your Partner Dashboard.

To create an app:

  1. From your Partner Dashboard, click Apps Create app.
  2. Provide an app name, URL, and Redirect URLs.
  3. Click Create app. You are directed to your app's overview page, where you can view the API key and API secret that you will need for the module's connection configuration.
Connection TypeShopify (public apps).
Connection nameEnter the name of the connection.
DomainEnter the name of your Shopify domain. If your Shopify store address is https://mystore.myshopify.com, enter "mystore".
Client ID

Enter the API key for the app, as defined in the Partner Dashboard.

Client SecretEnter the API secret key for the app, as defined in the Partner Dashboard.
Scope

Specify needed scopes. If you requested both the read and write access scopes for a resource, then enter only for the write access scope. The read access scope is omitted because it’s implied by the write access scope. For example, if your request included scope=read_orders,write_orders, then check only for the write_orders scope.

See the list of admin scopes.

New Event

Triggers when a specified event is performed.

Webhook nameEnter the name for the webhook.
ConnectionEstablish a connection to your Shopify account.
EventSelect the event that triggers the module.
If you receive an error, it is probably due to a scope issue.

Adding a New Scope

1. Open Create a connection dialog.

2. Click on the Show advanced settings dialog.

3. Add a new scope. Find the corresponding scope on the List of the API Access Scopes.

E.g., read_orders for orders/paid or orders/create events.

2Ja0GEJxJ0.gif

Common Issues

Errors: [API] This action requires merchant approval for <XXXX_XXXX> scope

You need to create a new connection with a required scope.
Unfortunately, when you create a new connection, all previously used scopes are removed from your account, and only scopes added in the latest connection are used for all your connections (including the previously created connections).

Include all needed scopes in the new connection.

Popular use cases from our blog

facebook-leads-airtable-article-illustration

How to Easily Import Leads from Facebook to Mailchimp and Airtable

Active-campaign-automation-illustration.png

How to Boost ActiveCampaign Automations With Integromat

Instagram-for-business-2-illustration

Instagram for Business Automation: 3 Powerful Templates to Get Started

How-to-automate-reporting-with-nocode-illustration

Automated Reporting: Get Rolling With 4 Easy, Practical Solutions

How-to-manage-Twitter-from-a-Notion-database-part-1-Illustzration

Can You Tweet From Notion? Yes, and Here’s How to Do It [Tutorial]

slack-automation-illustration

Slack Automation: 20 Free Templates to Get You Inspired

Didn’t find what you were looking for?

Ticket

Create a ticket

Contact our world-class support team and tell us what’s happening.

Create a ticket
Expert

Find an expert

We feature a network of 450+ certified partners across the globe who are ready to help

Find an expert

Automate any workflow in your business

Sign up for a free account today. No credit card required, no time limits on free plan.