Shopify’s latest developer update removes a long‑standing friction point for Flow app creators. Trigger Lifecycle Callback extensions, which previously demanded absolute HTTPS URLs, now accept relative paths. This change streamlines local development, reduces configuration churn, and keeps your codebase cleaner—all without sacrificing security.
What’s New? Relative URLs for Flow Trigger Lifecycle Callbacks
Historically, Flow Trigger Lifecycle Callback extensions required an absolute HTTPS URL (e.g., https://myapp.com/api/flow/callback). That meant developers had to maintain a publicly reachable endpoint even while testing locally, or constantly update the URL whenever a tunneling service like ngrok changed. The new support for relative URLs lets you specify just the endpoint path (e.g., /api/flow/callback) and lets Shopify resolve it against the appropriate base URL in each environment.
Why This Matters for Developers
How It Works: Absolute vs. Relative URLs
When you run your app in development mode (e.g., using Shopify CLI run), Shopify resolves any relative URL against the temporary tunnel URL generated by the CLI. During a production deployment, the same relative path is resolved against the app’s application_url set in the Partner Dashboard. If you need a fixed endpoint that never changes—perhaps an external service—you can still supply an absolute HTTPS URL. Note that protocol‑relative URLs (//example.com/…) are not supported, and the app must have an HTTPS application_url configured before you can use relative paths.
Implementation Guide
{
"name": "order_fulfilled_callback",
"trigger": "orders/fulfilled",
"callback_url": "/api/flow/order_fulfilled"
}
Testing Locally with Tunnels
Run shopify app serve or shopify tunnel start to spin up a secure HTTPS tunnel (ngrok, Cloudflare, etc.). Your app’s application_url is temporarily set to the tunnel address, so the relative callback resolves correctly. Trigger a Flow event in your test store, and you’ll see the request hit your local endpoint without any URL rewrites.
Deployment Considerations
Best Practices
Conclusion & Next Steps
The addition of relative URL support for Flow Trigger Lifecycle Callback extensions is a small but powerful win for Shopify developers. It eliminates the “hard‑coded URL” pain point, speeds up local testing, and makes your deployment pipeline smoother. Update your manifest today, spin up a tunnel, and experience the new workflow firsthand. Need help migrating your existing callbacks? Reach out in the Shopify Community forums or drop a comment below—we’re happy to troubleshoot together.

