Build a system that locks carrier cutoff times (e.g., 2pm CT for UPS Ground same-day) into the storefront. The merchant runs a backend service that calculates ship and arrival dates in real time, passing those promises to the product page, cart, and checkout. As the cutoff approaches, alert customers in the cart that ordering now ships today; after cutoff, the promise updates to tomorrow. Store cutoff logic in shop metafields for easy adjustment without code redeploy.
A mid-market DTC merchant offering next-day and same-day shipping options needs to surface accurate carrier-specific cutoff times to customers at point of sale. Without clear cutoff transparency, customers place orders expecting same-day shipment only to receive next-day promises, creating fulfillment pressure and support friction.
Four pieces
Shipping
Cutoff Time Calculator
Checks the current time against carrier cutoff times in a specified timezone, then calculates which day an order will ship and when it will arrive.
Set buffer_minutes to when you need orders locked in (e.g., 15 min before 2pm CT to give you processing time).
Operations
Cutoff Configuration & Monitoring
Backend dashboard and metafield storage where cutoff times per carrier are set, fulfillment speed is tracked, and sales can be paused if falling behind.
Custom Shopify app + Heroku backend
Admin GraphQL explorergraphql
# Admin GraphQL – set and retrieve carrier cutoff metafields
query GetCarrierSettings {
shop {
metafield(namespace: "shipping_cutoffs", key: "ups_ground_cutoff_hour") {
value
}
}
}
mutation SetCarrierCutoff($metafields: [MetafieldsSetInput!]!) {
metafieldsSet(metafields: $metafields) {
metafields {
id
namespace
key
value
}
userErrors {
field
message
}
}
}
Use the metafield namespace 'shipping_cutoffs' with keys like 'ups_ground_cutoff_hour' (value: '14'). Store per-carrier cutoff logic in your backend service, poll it from Liquid.
Got a similar problem?
Sketch your build in 30 seconds — voice, type, or attach a screenshot.