Articles on: What's new

Syncing AfterShip Checkpoint Events to Shopify

Platform: Shopify; Plan: Enterprise only

Overview


This guide explains how to sync the latest shipment checkpoint events from AfterShip to Shopify so your store always reflects the most recent shipment status. By pushing checkpoint updates directly into Shopify, you keep merchants and customers informed throughout the delivery lifecycle.


This integration uses Shopify’s GraphQL Admin API, specifically the FulfillmentEventInput object. For reference, see Shopify's Admin API Documentation.


This feature is currently whitelist-only. If you require access, please contact your Customer Support Manager.


Primary use cases


  • Update Shopify whenever an AfterShip shipment checkpoint status changes.
  • Maintain a centralized view of fulfillment progress in Shopify.
  • Trigger Shopify automations using real-time shipping updates.


Field mapping


Important:
Do not write back Expired events. AfterShip’s Expired status has no suitable Shopify equivalent field to map.


AfterShip Tracking Field

Shopify FulfillmentEventInput Field

Nullable

checkpoint-datetime

happenedAt

Yes

checkpoint-message

message

Yes

checkpoint-status

status

No


Status mapping


AfterShip Status

Shopify Status

Mapping Logic

InfoReceived

LABEL_PRINTED

InfoReceived > LABEL_PRINTED

InTransit

IN_TRANSIT

InTransit > IN_TRANSIT

OutForDelivery

OUT_FOR_DELIVERY

OutForDelivery > OUT_FOR_DELIVERY

AttemptFail

ATTEMPTED_DELIVERY

AttemptFail > ATTEMPTED_DELIVERY

Delivered

DELIVERED

Delivered > DELIVERED

AvailableForPickup

READY_FOR_PICKUP

AvailableForPickup > READY_FOR_PICKUP

Exception- Failure

FAILURE

Exception > FAILURE

Expired

N/A

Do not sync

Pending

CONFIRMED

Pending > CONFIRMED

Exception-Delayed

DELAYED

Exception > DELAYED


Special case handling


1. Multiple tracking numbers per fulfillment


  • When a single fulfillment includes multiple tracking numbers with different statuses, choose the status with the highest priority from the list below.


Priority order (highest > lowest):


  1. Exception
  2. Pending
  3. InfoReceived
  4. InTransit
  5. OutForDelivery
  6. AvailableForPickup
  7. AttemptFail
  8. Delivered


  • Use the top-priority status as the one to write back to Shopify.


2. Multiple updates with the same status


Only write back to Shopify when the shipment’s checkpoint status actually changes.


  • ✔ Write back when the status changes, even if the new status is earlier (i.e., a regression)
  • ✘ Do not write back repeated events with the same status
  • This prevents unnecessary updates and API noise


What does it look like on Shopify

Noted:
  1. We do map with the shopify status Label_PRINTED and CONFIRMED, but shopify will not display these two status on the page
  2. Only the new events of the shipments that happened after the feature is enabled can be pushed to Shopify


After enabling the feature, we will start to push the tracking events to your Shopify stores, and it will be displayed on your order dashbord.


order detail page


order list



Conclusion


This integration lets AfterShip push precise, real-time shipment updates into Shopify. By following the field mapping, status mapping, and prioritization rules above, you ensure reliable, clean, and automation-ready fulfillment events inside the Shopify Admin.


If you need access to this feature, contact your Customer Support Manager to enable it for you.



Updated on: 16/12/2025