When using Zapiet - Pickup + Delivery, we recommend managing your orders in the Zapiet - Pickup + Delivery Orders tab.
This feature allows you to mark individual products within an order as fulfilled, enabling partial order fulfilment when not all items ship together.
Only orders placed after enabling this feature will be affected. You won't be able to partially fulfil existing orders.
Requirements
You need to be on the Pro plan or higher
Enable marking specific products in an order as fulfilled
In Settings, click Developers.
In the Advanced section, tick Enable marking specific products in an order as fulfilled.
Click Save.
You will now be able to change individual product statuses on future orders. You will also need to update your Zapiet - Pickup + Delivery email notifications to ensure customers receive the right information.
Fulfil specific products
In the Orders tab, open the order you want to edit.
Tick the products you want to update.
Change the order status.
There are different statuses available, depending on the order type.
Fulfilment in Shopify
If you have the setting Mark as fulfilled enabled in the general pickup, delivery or shipping settings, we will automatically fulfil the products in Shopify from the connected location when you mark them as completed.
The stock will initially be deducted according to your Shopify priority location or Order Routing Rules when the order is created. When you mark the products as picked up or dispatched, we will force Shopify to fulfil the order from the correct location and adjust the stock.
If you have the Archive order once fulfilled settings enabled, Zapiet - Pickup + Delivery will archive the order in Shopify when all products are fulfilled.
Fulfilment in Shopify triggers Shopify shipping confirmation. When you have all the pickup and/or delivery notifications enabled in Zapiet - Pickup + Delivery, this notification will be disabled for pickup and/or delivery orders.
Bulk update order status
You can update the status of all products in an order simultaneously from the order dashboard.
Click Orders.
Tick the order/s you would like to update.
Click Update status.
Choose the order status you want to be applied to all products in the selected orders.
Click Confirm.
All products in the selected orders will be updated to the same status. This action cannot be undone.
Update email notifications
If you are using Zapiet - Pickup + Delivery emails for pickup and/or delivery, you will need to modify your email template/s.
Shipping orders use Shopifys default shipping notifications.
SMS notifications cannot be modified to check if only some or all products are fulfilled. If needed, you can modify the wording in Settings > SMS notifications.
Pickup notifications
There are two available email templates for pickup orders. You can customize them to include wording for products with different fulfilment statuses.
Order ready for pickup
In Settings, click Email notifications.
Under the Customer notification settings, click Order ready for pickup.
In the top right-hand corner, click Edit code.
In the Subject field, replace the text with this code:
Order {{name}} {% if item_count == line_items_count %} Your order is ready for pickup {% else %}Some items from your order are ready for pickup {% endif %}In the Email body field, find this code:
{% capture email_title %}
Your order is ready for pickup
{% endcapture %}
And replace it with this:
{% capture email_title %}
{% if item_count == line_items_count %}
Your order is ready for pickup
{% else %}
Some items from your order are ready for pickup
{% endif %}
{% endcapture %}Click Save.
Your Order ready for pickup email will now include wording when only some of the products are marked ready for pickup.
Order picked up
In Settings, click Email notifications.
Under the Customer notification settings, click Order picked up.
In the top right-hand corner, click Edit code.
In the Subject field, replace the text with this code:
Order {{name}} {% if item_count == line_items_count %} Thanks for collecting your order {% else %} Thanks for collecting your items{% endif %}In the Email body field, find this code:
{% capture email_title %}
Thanks for collecting your order in store!
{% endcapture %}
And replace it with this:
{% capture email_title %}
{% if item_count == line_items_count %}
Thanks for collecting your order in store!
{% else %}
Thanks for collecting your items in store!
{% endif %}
{% endcapture %}Click Save.
Your Order picked up email will now include wording when only some products have been collected.
Delivery emails
There are three available email templates for delivery orders. You can customize them to include wording for products with different fulfilment statuses.
Ready for delivery
In Settings, click Email notifications.
Under the Customer notification settings, click Ready for delivery.
In the top right-hand corner, click Edit code.
In the Subject field, replace the text with this code:
Order {{name}} {% if item_count == line_items_count %} Your order is ready for delivery {% else %}Some items from your order are ready for delivery {% endif %}In the Email body field, find this code:
{% capture email_title %}
Your order is ready for delivery
{% endcapture %}
And replace it with this:
{% capture email_title %}
{% if item_count == line_items_count %}
Your order is ready for delivery
{% else %}
Some items from your order are ready for delivery
{% endif %}
{% endcapture %}Find this code:
{% capture email_body %}
Your order has been prepared and is now ready for delivery.
{% endcapture %}
And replace it with this:
{% capture email_body %}
{% if item_count == line_items_count %}
Your order has been prepared and is now ready for delivery.
{% else %}
Some items from your order have been prepared and are now ready for delivery.
{% endif %}
{% endcapture %}Click Save.
Your Ready for delivery email will now include wording when only some products are ready for delivery.
Out for delivery
In Settings, click Email notifications.
Under the Customer notification settings, click Order picked up.
In the top right-hand corner, click Edit code.
In the Subject field, replace the text with this code:
Order {{name}} {% if item_count == line_items_count %} Your order is out for delivery {% else %}Some items from your order are out for delivery {% endif %}In the Email body field, find this code:
{% capture email_title %}
Your order is out for delivery
{% endcapture %}
And replace it with this:
{% capture email_title %}
{% if item_count == line_items_count %}
Your order is out for delivery
{% else %}
Some items from your order are out for delivery
{% endif %}
{% endcapture %}Find this code:
{% capture email_body %}
Your order is out for delivery. Track your order to see it's delivery status.
{% endcapture %}
And replace it with this:
{% capture email_body %}
{% if item_count == line_items_count %}
Your order is out for delivery. Track your order to see it's delivery status.
{% else %}
Some items from your order are now out for delivery. Track your order to see it's delivery status.
{% endif %}
{% endcapture %}Click Save.
Your Out for delivery email will now include wording when only some products are out for delivery.
Order delivered
In Settings, click Email notifications.
Under the Customer notification settings, click Order delivered.
In the top right-hand corner, click Edit code.
In the Subject field, replace the text with this code:
Order {{name}} {% if item_count == line_items_count %} Your order has been delivered {% else %}Some items from your order have been delivered {% endif %}In the Email body field, find this code:
{% capture email_title %}
Your order has been delivered
{% endcapture %}
And replace it with this:
{% capture email_title %}
{% if item_count == line_items_count %}
Your order has been delivered
{% else %}
Some items from your order have been delivered
{% endif %}
{% endcapture %}Find this code:
{% capture email_body %}
Haven’t received your order? <a href="mailto:{{ shop.email }}" target="_blank">Let us know</a>.
{% endcapture %}
And replace it with this:
{% capture email_body %}
{% if item_count == line_items_count %}
Haven’t received your order? <a href="mailto:{{ shop.email }}" target="_blank">Let us know</a>.
{% else %}
Some items from your order have been delivered. Haven’t received your products? <a href="mailto:{{ shop.email }}" target="_blank">Let us know</a>.
{% endif %}
{% endcapture %}Click Save.
Your Order delivered email will now include wording when only some of the products have been delivered.
Disable marking specific products in an order as fulfilled
In Settings, click Developers.
In the Advanced section, tick Enable marking specific products in an order as fulfilled.
Click Save.
Future orders will be unable to fulfil individual products. Your existing orders will still be able to be individually marked.
Limitations
After Enable marking specific products in an order as fulfilled setting is enabled, all future orders can be partially fulfilled. It does not affect pre-existing orders.
Undo order status change is unavailable on orders placed while this feature was enabled.
The SMS notification cannot be modified to check if all items were fulfilled, or only some. You can edit it to use generic wording in Settings > SMS notifications.
