Shopify not receiving tracking updates from PostNL/DHL
Hi everyone, I run my webstore in the Netherlands and manually create my shipping labels through PostNL and DHL. I then mark the order as fulfilled in Shopify and add the tracking number and link. The tracking link works perfectly, but Shopify doesn’t receive…
Hi everyone, I run my webstore in the Netherlands and manually create my shipping labels through PostNL and DHL. I then mark the order as fulfilled in Shopify and add the tracking number and link. The tracking link works perfectly, but Shopify doesn’t receive any further tracking updates, so the order status never changes to in transit, out for delivery, or delivered. As a result, Shopify also doesn’t send any of those automatic shipping emails. I can’t use Shopify Shipping for my carriers, and the shipping apps I’ve tried haven’t worked reliably. Is there any way to connect PostNL/DHL tracking updates to Shopify without using a third-party shipping app? Thanks!
Collected discussion
Your comment in r/shopify was automatically removed as your account is too new (accounts must be at least 30 days old). Try again a little later. I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
Your comment in r/shopify was automatically removed as your 'post' karma is below 10 (we do not consider your total karma; your post and comment karma are separate numbers and must both meet their minimum requirement). You can increase your post karma by posting in other areas of Reddit to earn upvotes. The higher quality the content, the higher your karma will become. I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
How do i find if it is receiving?
Yeah, Shopify limitation. When you add a tracking number manually with a custom carrier (instead of picking one from Shopify's built in carrier list), Shopify just stores it as a static link, it doesn't poll the carrier for status updates. That's why the order stays "fulfilled" forever and the automatic in transit/delivered emails never fire. To actually get live updates you'd need something polling PostNL/DHL's own tracking API and pushing those status changes back into Shopify through the Fulfillment API. So probably are you basically updating customers manually right now.
How do i get the api?
Your comment in r/shopify was automatically removed as your 'post' karma is below 10 (we do not consider your total karma; your post and comment karma are separate numbers and must both meet their minimum requirement). You can increase your post karma by posting in other areas of Reddit to earn upvotes. The higher quality the content, the higher your karma will become. I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
You have to sign up for DHL's "Universal shipping API". I did the whole process and it works now but it took a week of my life to get up and running. I had to create a webhook that listens to new fulfillments in Shopify. This then stores the DHL tracking number and a scheduled function keeps polling it every 3 hours. If there's a change, it sends a GraphQL request to Shopify with a new fulfillment event. You have to map each DHL state carefully to the Shopify fulfillment state and make sure to stop polling when it's delivered. Sounds all straightforward but it's been a mess, honestly.
From what I've seen, adding the tracking number manually usually only gives Shopify the initial tracking link. The automatic "in transit" and "delivered" emails depend on Shopify actually receiving status updates back from the carrier, and not every carrier integration supports that natively. I'd first double check whether the tracking numbers are being recognized by Shopify at all before chasing another workaround.
You have to use an external app from the App Store like AfterShip. That’ll push updates to Shopify.
This comment was deleted.
This comment was deleted.
This comment was deleted.