Credentials. Carrier credentials are stored in the carrier company management area, so use a team account with only the delivery permissions it needs.
Who it is forA merchant shipping COD orders who is tired of juggling separate carrier portals.
The problemEach carrier has its own portal, and delivery status is hard to see next to the order.
The outcomeShipments created from the dashboard with real-time status updates and an event log showing how each webhook was handled.
What you need first
- Node.js 22.12+ and npm
- Wrangler CLI (npm install -g wrangler)
- A free Cloudflare account
- Carrier and Meta credentials if you connect delivery or ads (optional)
Steps
- Add your carrier company in the dashboard with its credentials, then run a stop-desk sync so desk lists cover your wilayas.
- Open a confirmed order and create a shipment, choosing home delivery or stop-desk pickup.
- Print the shipment label from the dashboard and hand the parcel to the carrier.
- Check the webhook event log to confirm each carrier event shows as applied, ignored, unmapped or error.
Prompt for your agent
In the CodFlow repo at https://github.com/bighadj22/codflow, use the dashboard's delivery tools to create a shipment for order <order ID> with carrier <carrier name>. Expected output: a shipment ID and a printable label. Verify that the webhook event log shows an applied event after the carrier sends its first status update.
Caveat. The README describes HMAC verification only for Yalidine and ZR Express webhooks, so other carriers may not have the same verification.
Use this in your AI agent
Ask your agent
Using the Deduped MCP, get the setup steps for bighadj22/codflow and "Ship COD orders and track them through carrier webhooks"
Add Deduped to Claude Code once
claude mcp add --transport http deduped https://dedupedai.com/mcp
Every Monday: the 5 hottest repos and exactly how to use them. Free, one email a week, unsubscribe anytime.
Get them freeShare: X LinkedIn Hacker News Email Copy link
Third-party repos we don't own. AI-written use cases can be wrong. Disclaimer