Skip to main content

How sales orders sync between Shopify and Katana

Open sales orders, changes made to orders, and a two-way sync of fulfillment statuses

Dayvid Lorbiecke avatar
Written by Dayvid Lorbiecke
Updated over 2 weeks ago

Katana's integration with Shopify ensures seamless synchronization of sales orders (SOs), keeping your inventory and production processes aligned.


  • Automatic import: After connecting Shopify to Katana, all existing open SOs with an "Unfulfilled" status are imported. New SOs created in Shopify will automatically sync to Katana in real-time.

  • Payment status options: During setup, choose to import SOs with either "Paid" status only or include those with "Payment pending" status.

  • Draft orders: Draft SOs in Shopify are not synced to Katana.

  • Location mapping: SOs are imported to the corresponding Katana location based on your Shopify location mappings.

  • Multi-currency support: For Standard, Professional, and Professional Plus plans, SOs in multiple currencies are converted to Katana's base currency upon import.


Data mapping between Shopify and Katana

Shopify field

Katana field

Notes

Order number

Sales order #

Direct mapping.

Created date

Created date

Direct mapping.

------

Calculated in Katana

Since Shopify doesn't provide this, Katana calculates it as Created Date + Default Delivery Time (editable in Settings > General).

Customer name

Customer name

If the customer exists in Katana, it's matched; otherwise, a new customer is created.

Billing address

Bill to

Direct mapping.

Shipping address

Ship to

Direct mapping.

Line items

Line items

Products are matched by SKU; if not found, new products are created.

Line item properties

Line item properties

Custom options (e.g., from product add-ons) are imported.

Custom items

Products or Services

Imported if enabled during integration setup. (either as a Product or Service, depending on choice).

Quantity

Quantity

Direct mapping.

Price

Price per unit

If Shopify prices include tax: Katana Price = Shopify Price / (1 + Tax Rate). If not: Katana Price = Shopify Price.

Tax Rate

Tax %

Direct mapping.

Currency

Currency

Imported for Standard or higher plans.

PO Number

Customer reference #

Direct mapping.

Discounts

Discount %

Order-level discounts are proportionally allocated to line items in Katana.

Note: A hidden Shopify ID is added to each imported SO in Katana to prevent duplicate imports, even if the order is deleted in Katana.


If enabled during integration setup, the following changes in Shopify SOs will sync to Katana:

  • Quantity adjustments

  • Adding or removing line items.

  • Order cancellations.

  • Order deletions.

  • Order archiving.

These changes will reflect in Katana's production schedule, especially for Make-to-Order (MTO) manufacturing orders.

Limitations:

  • Changes to customer details, addresses, order numbers, dates, and product customization options are not synced.


When enabled, fulfillment statuses sync between Shopify and Katana as follows:

  • From Katana to Shopify:

    • Marking an SO as Delivered in Katana updates it to "Fulfilled" in Shopify.

    • Marking an SO as "Partially Delivered" in Katana updates it to "Partially Fulfilled" in Shopify.

  • From Shopify to Katana:

    • Marking an SO as "Fulfilled" in Shopify updates it to Delivered in Katana.

    • Marking an SO as "Partially Fulfilled" in Shopify updates it to Partially Delivered in Katana.

Note: For batch-trackable items, Katana assigns batches using the FIFO (First-In, First-Out) method when fulfillment is initiated from Shopify.


Managing multiple Shopify stores

If you have multiple Shopify stores connected to Katana:

  • Each store's integration operates identically.

  • Products with matching SKUs across stores are recognized as the same in Katana, preventing duplicates.

  • You can map each Shopify store to the same or different Katana locations as needed.


Your feedback is invaluable. Let us know your thoughts on this article or anything in Katana you'd like to see improved: [email protected]

Did this answer your question?