On Hold - Release Hold: Generate the documents automatically after you confirm/verify the orders

Modified on Thu, 10 Jul at 2:26 PM

This automation uses two Shopify Flow workflows:



  1. Hold Flow
    • Automatically sets the order to ON HOLD
    • Adds the ON HOLD tag
  2. Release & Generate Flow
    • Triggers document generation (shipping label, invoice)
    • Removes the ON HOLD tag
    • Adds the CONFIRMED tag



You can modify the tag name with your own
You can modify the waiting time
You can add your own rules




When you put an order “On hold” in Shopify, you’re pausing its fulfillment process. This gives you time to:


  • Confirm the order by phone

  • To choose one if no locker is selected

  • Check or allocate stock/SKUs for the products

  • Correct any wrong addresses or missing details

  • Perform any other necessary checks before generating shipping labels and invoices



Once all conditions for fulfillment are met, simply click Release hold, and the second Flow will run—automatically generating your shipping and invoicedocuments, updating tags, and allowing fulfillment to proceed.



How to release an Order Hold in Shopify


1. Go to the Orders page in your Shopify admin
2. Click the order that’s marked “ON HOLD.”
3. Click on Release hold

Once you release the hold, your “Release & Generate” Flow will kick in to generate shipping labels and invoices automatically.





Before you automate the document‐generation process, make sure you’ve configured the features that enable your automation.


For example: If an address is incorrect, or important order data is missing (e.g. phone number or e-mail), or package dimensions are missing but the courier requires them, or you haven’t saved SKU codes for products even though you’ve enabled inventory deduction, etc.—then automatic document generation will very likely fail because your courier or invoicing services will return errors (for example: missing postal code, missing e-mail address, missing package dimensions, missing company registration details, out-of-stock products, and so on).


So it’s crucial to review your settings and eliminate all these causes in advance. 



The most important options before activate these 2 flows:


  • Verify API connections for your courier and invoicing connectors.

Make sure you can generate documents manually before automating.

  • Enable the address-validation module and automatic postal-code lookup.

xConnector > Profile > Preferences > Address validation > Validate address
xConnector > Profile > Preferences > Address validation > Fill in missing zip code


  • Set “Match courier by ID” so the system recognizes the courier based on the selected locker.

xConnector > Profile > Preferences > Automation > Match courier by ID


  • Other default settings to configure
xConnector > Profile > Preferences > Default values > Include shipping in COD
xConnector > Profile > Preferences > Default values > Include shipping in invoice

  • Configure your B2B invoicing options.
xConnector > Profile > Preferences > Content helpers > Search for company details
xConnector > Profile > Preferences > Default values > Use the billing address for invoice
xConnector > Profile > Preferences > Default values > Don't create invoice if company not found

  • Ensure no other Shipping label/invoice-generation automations are active 

(through other flows, tracking-based generation, COD import generation, etc.).



Ensure package dimensions are filled in (if your courier requires them).

xConnector > Profile > Preferences > Shipping packages


Filltering by ON HOLD in xConnector

In xConnector you can filter the order list by the “ON HOLD” tag, since this flag isn’t shown in the order list by default just like in Shopify.



How to Configure Your Hold-and-Generate Workflows



Step 1: xConnector Settings


1.1 Select a default courier

xConnector > Profile > Preferences > Automation > Default shipping connector


1.2 Select a default invoicing service.

xConnector > Profile > Preferences > Automation > Default billing connector



Step 2: Shopify Settings

2.1 Shopify > Apps > Flow
2.2 Import and Activate the Flows. Click here to download:  the FLOW 1 and FLOW 2.
2.3 Customize the flows 


2.3.1 Customize the first flow Hold order



Flow Overview:


Order placed  → wait 1 minute → put fulfillment ON HOLD→ tag order ON HOLD

What to customize:


  • You can modify the waiting time and the tag naming.
  • You can add your own rules



2.3.2 Customize the second flow Release hold



Flow Overview:


When a fulfillment hold is released, this Flow automatically creates shipping labels and invoices, then updates order tags. It splits into two parallel branches:


a. Shipping Labels

  1. Trigger: Fulfillment order holds released

  2. Wait: 1 minute

  3. Branch 1 – Non‑locker shipments:

    • Condition: Shipping method title does not include "Locker"

    • Action: Create shipping label

    • Next: Remove tag ON HOLD → Add tag CONFIRMAT

  4. Branch 2 – Locker shipments:

    • Condition: Shipping method title includes "Locker"

    • Sub‑condition: Custom attribute key equals LocationId

    • Action: Create shipping label

    • Next: Remove tag ON HOLD → Add tag CONFIRMAT


b. Invoice

  1. Trigger: Fulfillment order holds released

  2. Wait: 1 minute

  3. Action: Create invoice

  4. Next: Remove tag ON HOLD → Add tag CONFIRMAT



What to customize:


Branch 1 – Non‑locker shipments:


  • Replace "Locker" with the specific text in your locker delivery method to correctly distinguish non-locker shipments.
  • You can modify the waiting time and the tag naming.
  • Invoice timing: Set the wait time for invoice generation shorter than for shipping labels, so the invoice is already issued before the Shipping label and can be included in Shopify’s Shipping Confirmation email upon fulfillment
  • You can add your own rules


Branch 2 - Locker shipments:

  • Replace "Locker" with the specific text in your locker delivery method to correctly distinguish non-locker shipments.
  • You can modify the waiting time and the tag naming.
  • Invoice timing: Set the wait time for invoice generation shorter than for shipping labels, so the invoice is already issued before the Shipping label and can be included in Shopify’s Shipping Confirmation email upon fulfillment
  • You can add your own rules
  • If you don’t use locker delivery, you can remove the branch that refers to it


Branch 3 - Invoice:


  • You can modify the waiting time and the tag naming.
  • Invoice timing: Set the wait time for invoice generation shorter than for shipping labels, so the invoice is already issued before the Shipping label and can be included in Shopify’s Shipping Confirmation email upon fulfillment
  • You can add your own rules



Recommendation: Always test your Flows!


  • Place a test order for locker delivery and another for home delivery.

  • Wait for the orders to be automatically put on hold.

  • Verify and correct any addresses if they’re wrong, then release the hold.

  • Check that documents are correctly generated.








Disclaimer

These workflows are provided by us as optional guidance to help the community generate docuements. Flow definitions are highly versatile and can be modified at any time to suit your needs.



This feature is available for the Advanced plan

Feel free to contact us if you need any further information:


Chat: click on the blue chat icon (bottom-right)

E-mail: support@xconnector.app

Phone: +4 0373 747 991






 



Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article