Post-purchase fulfillment holds
When a customer completes payment during checkout, an order is generated in Shopify. If a post-purchase upsell is offered to the customer, the order will have a fulfillment status of On Hold.
The On Hold status indicates that fulfillment should be paused, as the customer may accept the upsell, which would add items to the order. This status ensures the order is not processed prematurely, allowing time for potential additions.
Releasing post-purchase fulfillment holds
Once the fulfillment hold is released, the order fulfillment status will change to Unfulfilled:
The order hold will automatically release in the following scenarios:
If the customer clicks Accept or Decline on all post-purchase offers.
If 60 minutes has passed since the order's creation.
NOTE: If the "Release fulfillment holds from 1-click offers when the offer timer ends" setting is enabled in
AfterSell > Settings > Fulfillment and payment
, the release time may differ.
DEV Note: How the "Release fulfillment holds from 1-click offers when the offer timer ends" functions behind the scenes.
When the above setting is enabled, and AfterSell determines that the order hold should be released, the following actions are performed:
1. AfterSell queries Shopify for the order and retrieves all associated fulfillments (an order may have one or more fulfillments).
2. AfterSell instructs Shopify to release the order hold for each individual fulfillment.
AfterSell will add an event to the order for each fulfillment hold released, displaying the message "AfterSell Post Purchase Upsell released fulfillment for X items."
Note: AfterSell does not modify the number of fulfillments.
The following table describes the timeline of when the post-purchase fulfillment hold is released for various customer scenarios:
Integrating with external fulfillment services (3PL)
Certain fulfillment services or custom workflows may not be configured to handle the
On Hold status for order fulfillment. If your process does not properly manage post-purchase fulfillment holds, there is a risk of partially fulfilling orders or generating unnecessary extra fulfillments for a single order.
Fulfillment workflows differ from store to store, as do the solutions for managing orders with post-purchase upsells. The following framework provides guidance on assessing and implementing any necessary adjustments to ensure that your fulfillment process operates smoothly with post-purchase upsells:
If your fulfillment process requires a custom solution to work with post-purchase upsells, please contact AfterSell Support for assistance.
ShipStation Integration
If you're utilizing ShipStation with a direct connection to Shopify, your fulfillment process should automatically integrate with post-purchase upsells.
However, if you're using an intermediary service to connect Shopify and ShipStation (such as NetSuite), you might require a custom solution. Please refer to the next section to review the expected order format in ShipStation to ensure everything is operating correctly.
How On Hold Orders Look in ShipStation
Orders marked as On Hold in Shopify will appear in the On Hold section of ShipStation. These orders will display a quantity of 0. The quantity shown in ShipStation represents the fulfillable amount, which is indicated as 0 while the order is On Hold because none of the items are ready to be fulfilled yet (since the order may still be adjusted with post-purchase upsell items).
After the order fulfillment hold is lifted, the order will shift to the Awaiting Shipment tab in ShipStation. The quantity will be updated to accurately reflect the total quantity of the order, including any post-purchase upsell item(s).
These orders will indicate that the quantity has been updated by the selling channel, which is Shopify in this instance.
Testing Notes
If you're testing your ShipStation integration and aren't seeing orders come in immediately, you can manually refresh the orders for your store.