Skip to main content

Shopify: What is it

Synchronize all the information of your Shopify online store with Holded

Héctor Emperador avatar
Written by Héctor Emperador
Updated over a week ago

This integration allows you to sync all the information from your Shopify online store with Holded. In this way, the data on orders, products, stock level and warehouses will be uploaded to Holded every time a change is made in your online store and vice versa.

☝🏼 Holded will use the SKU of the product to link the information between the two platforms. Your stock level may be affected if a product order has the same SKU, even if sync is not enabled.


The four parts of integration

1. Sales

1.1. Document types

Orders imported from Shopify can be converted into a sales receipt, sales invoice, sales order, or corrective sale, depending on their payment status.

If payment has been made, a receipt or invoice will be generated. If not, a sales order will be created. Returns are converted into corrective sales.

Available options:

  • Sales order: useful for cash on delivery orders or orders that need to be edited before generating a final document. You can check the status of your orders and customize them exactly as they are configured in Shopify.

  • Sales ticket: recommended if you do not work with invoicing; these are only generated if the order is marked as Paid.

  • Sales invoice: generated with the customer's tax information and only for orders with Paid status.

  • Corrective sale: applied to returns or refunds.

☝🏼 Only orders that are in Paid status in Shopify are imported, unless you choose to convert them to Orders.

1.2. How currencies are converted in orders

When an order arrives from Shopify, it may be in one or two different currencies. Holded converts everything so that it matches the currency you use in your account.

Here's what can happen:

  • If the order comes in a single currency:

    • If it's the same currency you use in Holded (for example, euros), nothing changes.

    • If it's different (for example, dollars), Holded automatically converts it to your currency using the exchange rate for that day (or the one you've set).

  • If the order comes in two currencies (for example, someone buys from you in pesos, but your store is in dollars):

    • If one of those two currencies is the same as the one you use in Holded, that one will be used directly.

    • If both are different from yours, Holded will use the store's currency (not the customer's) and convert it to yours.

This way, you will always see your orders in the currency you use in Holded, even if the sales arrive in other currencies.

1.3. Otros ajustes de ventas

In addition to importing orders and managing currencies, Holded lets you do more to gain complete control over how Shopify sales arrive and are recorded:

  • Assign a sales channel: this allows you to mark orders that come from Shopify, so you can then analyze them better in the sales reports you have within Holded.

  • Link payment methods: if you already have payment gateways (such as Stripe, PayPal, or a bank account) connected to Holded, you can link them to the payment methods you use in your Shopify store. This way, you'll know how each order was paid for.

  • Apply a specific invoice template: you can choose a specific design for the documents that are generated (such as invoices or receipts), with your logo, colors, or custom structure.

  • Apply specific taxes: if you need a specific tax rate to be applied to certain sales, you can do that too.

  • Automatically correct decimals: Shopify and Holded sometimes calculate cents differently. To avoid small differences in prices, you can activate an option called Tax Correction. If you deactivate it, you may see slight differences between what appears in Shopify and what is generated in Holded.

  • Decide how contacts are created: you can configure whether you want Holded to automatically create a new contact for each order, or always use the same one.

  • Control the numbering of your documents: you can choose where the numbering of your orders, receipts, or invoices begins, so that everything is organized the way you want.

You will find all these settings in the Advanced Settings section, once you have connected your Shopify store to Holded.

If you want to see more details on how to import your orders, check out this article.

2. Products

When you enable product import, products will be created in Holded based on the data from your Shopify store, as long as they have an assigned SKU.

You can choose which fields to sync (name, price, description, barcode, cost, and taxes). Only the selected fields will be updated in Holded; all others will remain unchanged. This synchronization is one-way: Shopify → Holded.

☝🏼 If a product with the same SKU already exists in Holded, its information will be overwritten based on the selected fields. If the SKU doesn't exist, a new product will be created.


The product cost will only be imported if it’s empty in Holded.

What happens when creating, updating, or deleting a product?

Action

Platform

Consequence in Holded

Comments

Create product

Shopify

✅ Product is created if it has a SKU

Create product

Holded

❌ Not created in Shopify

Update product

Shopify

✅ Updated based on selected fields

Available fields: name, description, price, cost, taxes, barcode

Update product

Holded

❌ Not updated in Shopify

Delete product

Shopify

🔗 Link with Holded is removed

Product still exists in Holded

Delete product

Holded

❌ Not deleted in Shopify

3. Stock Level

Unlike product integration, stock level synchronization is bi-directional. This means that by enabling this option, the stock level will be affected in both Holded and Shopify, no matter where the information is changed.

☝🏼 This option allows any SKUs that match each other to be automatically synced, even if product import is not enabled

Stock synchronization is bi-directional. Here is a table summarizing how stock level synchronization works between the two platforms:

Action

Platform

Consequence

Comments

Manually update stock

Shopify

✅ Stock is updated in Holded

Only products with SKU in Shopify will be generated in Holded

Holded

✅ Stock is updated in Shopify

Create order/invoice

Shopify

✅ Stock is reduced in Holded upon import

No need to enable sync to reduce stock via orders if SKUs match

💎 Stock level sync requires Inventory gem activation.

4. Warehouses

When this option is activated, the warehouses configured in Holded will correspond to locations in Shopify, so that each movement of stock in your online store or in Holded will be reflected in the corresponding warehouse or location.

Multi Stores

In case you have more than one Shopify store, you can sync them all with the same Holded account.

📖   More information here about synchronizing multiple Shopify stores

Did this answer your question?