ISSUE NΒΊ 118 Β· SEP 18 Β· 2026 Β· LATEST DISPATCH

Workflows,
thought through.

A working journal from the team building AI-native automation. Essays, post-mortems, and field experiments on the playbooks that quietly run the modern company.

118 dispatches published
3.2M runs observed
94% first-compile accuracy
β—† RECENT DISPATCHES
⚑ SHIP TO: ID · RULE: NONE · RESULT: SOLD

How to restrict Shopify products from shipping to certain states

The order lands at 11:40 on a Saturday night: four tins of hemp gummies, paid, shipping to Boise. Idaho is one of the states you cannot send that to, and your store took the money anyway, because nothing in Shopify knows which of your products are legal where. Shopify restricts shipping by zone, and a zone is store-wide, so unchecking Idaho stops your t-shirts going there too. The only product-level lever is a shipping profile, and a profile restricts by absence: you give the product no rate to that state. That has been the official answer since June 18, 2021, when a merchant asked how to keep CBD out of four states and a moderator replied with shipping profiles. It breaks in the cart. Shopify combines rates across profiles, so a cart holding one restricted item and one ordinary one either charges shipping twice, default shopify behaviour, it cannot be changed, wrote a merchant on May 8, 2023, or tells the buyer you do not ship to their area at all and takes the legal half of the basket down with it. A merchant in June 2024: after talking to Shopify Support they have no solution. Another, on July 6, 2021, having followed the official instructions: this still isn't working. And the map moves faster than the setting. The federal hemp THC restrictions slid from November 12, 2026 to December 11, 2026 on a bill the House passed 370 to 48 on September 1, 2026, six states restrict alcohol into dry territory drawn by townships and precincts rather than ZIP codes, and Shopify's native zones stop at the state line, so there isn't a way to blacklist specific postcodes without a workaround. The AI playbook that reads what each product actually is, resolves the destination below the state line, blocks only the lines a jurisdiction bans while the rest of the cart checks out, and keeps the rule set dated so a law change is an edit instead of an incident.

P. Singh

How to fix Shopify shipping rates that ignore product dimensions

The order landed at 9:40 on a Friday night: one floor lamp, nine pounds on the scale, $11.40 of shipping collected at checkout. Monday you box it 44 by 12 by 12, because a floor lamp is 44 inches long, and the label costs $38. Nothing malfunctioned. Shopify quoted the only fact your store knows how to send, the weight, because a Shopify variant has a weight field and no length, width or height field anywhere, and every carrier-calculated quote goes out describing one default package whether the cart holds a phone case or a rug. A Shopify moderator answered the first dimensions request on February 5, 2021 in one sentence, Shopify doesn't have support for that, we use an app called boxify, and staff were still naming the same app in March 2024. In between: a November 2021 developer asking how to pass length, height and width into a CarrierService rate request, unanswered, asked again in April 2024, unanswered; $9.69 collected in March 2023 against a label that cost nearly $13, with staff confirming discrepancies occur when order dimensions are slightly larger than listed; a February 2024 merchant, the calculation is completely wrong and under charging my customers due to lack of product dimensions, this should be a problem addressed by Shopify, not third party apps; a March 2024 thread past a hundred replies naming the $20 discrepancy on large and bulky items calculated with the default small box; and January 2025, how on earth does it make sense for Shopify to only calculate shipping based on one default package. Meanwhile UPS and FedEx bill the greater of actual and dimensional weight at length times width times height over 139, that lamp dims at 46 pounds against nine, both carriers began rounding every fractional inch up on August 18, 2025, and in January 2026 both set additional handling at 10,368 cubic inches and oversize at 17,280. The gap arrives twice and never at checkout: the label on the day, and a price adjustment weeks later when the carrier finds the package dimensions specified on the label do not match the actual dimensions of shipment. Flow cannot be present for a rate request and Delivery Customization Functions can only hide, rename and reorder, never create an option or change a price. The AI playbook that fills the missing dimensions from supplier sheets with a confidence score, keeps a library of the boxes you really own, packs each cart before quoting it, and reconciles every quote against its label and its adjustment so the SKUs that keep quoting under name themselves.

P. Singh

How to find and fix duplicate SKUs on Shopify before they break your inventory

The customer ordered the midnight blue mug from your bundle page nine days ago and it has not shipped, because that page says zero. The same mug sits on its own product page with 14 in stock, selling all week. Same shelf, same characters in the SKU field, two products, two inventory numbers, and nothing in Shopify that ever thought to mention they were the same thing. Shopify's own documentation says SKUs within your admin must be unique and that duplicate SKUs can cause issues with third-party integrations and inventory tracking, and then enforces none of it: the warning is a line of grey text, the save goes through, the import goes through, and SKUs are case-sensitive, so ABC123 and abc123 pass every check and fail every match. Merchants have been asking since a thread opened on August 7, 2019 that was still collecting replies in November 2022, where the answer never changed, Shopify does not keep inventory in sync for products that share a SKU, and one merchant asked the obvious question: I dont understand why they would even allow duplicate a product if you cant sync the inventory. No staff answered, and the thread filled with apps at five, fourteen, and twenty-nine dollars a month. A May 2024 thread showed the problem is structural: Shopify asks a fulfillment service for one available number per SKU but subtracts a different committed quantity from each duplicate variant, so no single number can be correct for both at once, asked again in May 2025, still unanswered. And on September 15, 2026 a developer filed the front-door bug, duplicating a variant duplicates the SKU even when you tell it not to. Meanwhile there is no duplicate SKU report anywhere in the admin, the standard fix is a CSV export and a spreadsheet, and the bill compounds, because a duplicate found in week one is a rename and one found in year two has order history attached to it. The AI playbook that scans the whole catalog on a schedule, normalizes case and whitespace, tells the deliberate collisions from the accidents, keeps the bundles in sync, renames the defects on your format, guards every new variant within minutes of the save, and reports weekly.

P. Singh

How to track product expiry dates on Shopify before the stock goes bad

The pallet lands on a Tuesday: sixty fresh jars, best before next June. Forty older jars are already on the shelf, best before November. Shopify receives the delivery the only way it knows how, 40 becomes 100, and the one fact that decides whether you sell those jars or bin them stops existing. Shopify inventory is a single quantity per variant per location: no expiry field, no batch or lot dimension, no report that mentions a date. The community's standard answer is a date metafield updated by hand, and merchants have spent two years asking Shopify Flow to read it. October 2023: a merchant asks for an email ten days before the metafield date, and staff reply this is not currently possible. June 2024: a grocery seller asks for ten, five and two day notices plus automatic discounts, and staff name the wall, you cannot yet use metafields with Get product data, adding that it is not a Flow limitation, the API does not support it. January 2025: a merchant with 6,000 dated products is told a recent change lets you query products by metafield value but you cannot yet query by dates, and that there is no straight-forward way to scan them daily. February 2025: the same question, and the same staff answer, you cannot query by date metafields currently, so not sure that use case is possible. Meanwhile the oldest batch quietly ages out under the fresher batch's label, short-dated stock that could have sold at thirty percent off becomes a write-off at one hundred, and for supplement and food sellers a recall notice naming a lot number has no order list to match. The AI playbook that records every batch as it lands, sweeps every date daily, tiers the alerts, marks down short-dated stock on schedule, pulls the listing when the last good batch ages out, and keeps lot-to-order records so a recall is a lookup, not an apology tour.

P. Singh

How to put your Shopify store on vacation mode without losing sales

The question sounds so small that most owners are embarrassed to ask it: I run this store by myself, I would like to go away for a week, what do I press? Etsy sellers press Vacation Mode. eBay sellers press Time Away. Shopify's own help page opens with the admission: although Shopify doesn't have a vacation setting. The two official workarounds are a password page that hides your store from customers and Google alike, and a Pause and Build plan that shuts off checkout, discounts, and gift cards, requires picking a new plan to reopen, and since a change merchants reported in September 2024 may not even start until your billing cycle ends. One annual plan merchant asked to pause in September and was told his pause would take effect in July 2025. The threads aged the way these threads do: this is a DISASTER, January 2025; how are we supposed to plan a pause a month in advance, February 2025; I am quite happy to keep paying the full monthly price, I just want to stop selling so I can go on holiday, June 2025. And on August 7, 2026, a one person business asked again, calling Pause and Build a nightmare for a one week pause because it is tied to the billing cycle and not my vacation week, in a thread still active three days ago. Every workaround answers the question how do I stop selling. The playbook answers the better one: how do I stop working while the store keeps selling. The AI automation that dresses the store with your return date, stamps and queues every order that lands, answers where is my order with a date instead of silence, watches for the fires that cannot wait a week, and reopens in order the morning you are back.

P. Singh

How to handle Shopify pickup orders customers never collect

The shelf behind the register tells the story: eleven paper bags with sticky notes, and the oldest is from March. The customer paid in full, you packed the order, marked it ready, Shopify sent its one email, and then everyone went quiet. Merchants have been asking for the obvious fix since October 2021, in a thread that ran 27 replies and was still collecting posts in April 2025: a Hawaii tea merchant whose customers sometimes forget about their order for a month or more, sending personal reminder emails one at a time, asking for a resend button in the order timeline. Shopify staff confirmed the feature does not exist and suggested watching the changelog. The thread aged the way these threads do: almost a year and no fix, August 2022; a resend button visible in the timeline but greyed out, October 2022, still greyed out in a screenshot posted August 2023; it is completely asinine that this is not an existing feature, March 2024; it has been YEARS, lol, September 2024. A second thread asked again in May 2024 and closed on the same note in June 2025: how is this not an option yet. And the operational cost was documented back in March 2021 by a schoolwear shop that ended one peak season with hundreds of uncollected orders and sifted through every last one to send reminders by hand, while bags sat for months, inventory stayed committed, and the only app anyone could name charged ten dollars a month for what one merchant called a one in a hundred problem. The AI playbook that starts a clock the moment an order is marked ready, reminds on a schedule through a door that opens, catches the notification that bounced or went to a typo, offers shipping or a refund when the shelf date passes, restocks and closes per your policy, and reports weekly on shelf age and recovered sales.

P. Singh

How to fix order confirmation emails not sending on Shopify

The phone rings at ten past four: I placed an order this morning and I never got a receipt. Did you actually charge me? You open the order and the timeline line that should read Order confirmation email sent is simply not there. Merchants have been comparing notes on this since October 2021, in a thread that ran 26 replies and was still collecting posts in July 2025. The original case is the whole problem in miniature: a phone order, a draft, the email address added a moment too late, and Shopify staff confirming there is no way within the admin to send an order confirmation if none went out the first time, only a feature request that cannot be tracked. The thread aged publicly: a year later, did this ever come through, still a big issue; May 2023, in capitals, it's been a whole year; January 2024, it is nothing more than one resend button, could be fixed in five minutes; February 2024, other platforms are implementing AI and here I am not being able to send an order confirmation email. The workarounds merchants traded are their own indictment: email the customer a screenshot of the order page, or dig the order status URL out of More actions and paste it into a plain email. And the missing button is only one door. A March 2023 merchant reported a lot of customers saying they never received the confirmation, and named where their minds go: people automatically think they get scammed. Confirmations land in spam when the sending domain is not authenticated. They go to the typo the customer made at checkout. Orders placed through checkout links or the Storefront API arrive with the source marked via import and Shopify suppresses the email on purpose, as a July 2025 thread discovered, to prevent duplicates it decided you might send. And when an email bounces, nothing in the admin says so: asked in a thread active in February 2025 where to find emails that were not delivered, merchants learned there is no such log. The AI playbook that watches every new order for the confirmation event, diagnoses the silent ones by cause, sends a replacement receipt through the invoice door before the customer asks, catches the typo addresses, matches bounces and never-got-it tickets back to their orders, and reports weekly on which door the silence came through.

P. Singh

How to stop your Shopify inventory changing by itself

The number is wrong on a Tuesday morning: a product you counted by hand last week shows 41 units, and you own 1. Nothing in the admin says why. Merchants have been comparing notes on this for years in a thread opened in May 2022 and still collecting replies in February 2025: sold out Christmas toys back in stock with their original numbers, in a store that had definitely sold them; items with 1 unit showing more than 40; a merchant who watched it happen at least once a month for two years while support was unable to assist. One merchant's low stock alert became an accidental monitoring system: every night at 9:20pm his digital products reset to zero, he set them back to 1000, and the next night they were zero again, five nights running. Another discovered that duplicating a product doubled its inventory, and summed up the aftermath: overselling, refunds, and Shopify's response just blames the user. In a second thread a store woke to the majority of its catalog reset to zero overnight, with no inventory apps installed and an adjustment history showing no evidence of the change; ten months later the only update was another merchant asking, was this resolved? Having the same issue today and no one can help. Shopify's own position, from staff in the thread: inventory should not change without a user or an app making the change. Which is true, and is precisely the problem, because the admin shows you the number, not the story. Adjustment history runs 180 days, reads one variant at a time, and files some mysteries under Data correction, defined in the help docs as an error correction that was made automatically. The causes are findable: a wholesale channel writing retail counts, a dropship app resyncing, a duplicate doubling, a CSV overwriting, a POS tap. The merchants' workaround is a standing stock take, and one settled for showing one less unit than he owns. The AI playbook that watches every adjustment as it lands, matches each one to an order, transfer, return, or named app, flags the orphans in minutes, keeps its own ledger past the 180 day window, and reports weekly on which door the changes came through.

P. Singh

How to catch Shopify orders that never sync to ShipStation

The order lands on a Tuesday: paid in full, confirmation sent, another green row in a busy week. Nine days later the customer emails asking where it is, you open ShipStation to check the label, and there is no label, because there is no order. Shopify never sent it. No error on either dashboard, no email, nothing to click: the order fell into the gap between the store and the warehouse and aged there until the customer found it for you. Merchants have the receipts. A March 2024 thread mapped one failure precisely: customer pays, a new tax amount is applied, the authorization is voided, Shopify emails the customer a payment failure notice, the invoice is paid again, and the order never exports. About one a week that we know about, the merchant wrote, then at least half a dozen a week by the next update. ShipStation confirmed no event ever reached their side. Shopify staff answered twice, and both answers were the same: talk to ShipStation. The genre is older than that thread. In February 2021 a merchant learned Printful never received two orders his customers had already been charged for, and the official advice was to refund them. In March 2022 another reported orders not flowing with everything connected correctly, in a thread still collecting replies in May 2025. In October 2025 a merchant posted his own YouTube workaround to a thread that got zero replies. The failure has a dozen mundane causes, a voided authorization, an order already marked fulfilled, a manual draft order, a hold, a status filter, and one shape: every system reports that it is fine, and the order is nowhere. The only defense merchants have found is diffing two order lists by hand, which the March 2024 merchant called a nightmare in busy seasons where we'll have thousands of orders per day. The AI playbook that reconciles Shopify against ShipStation or any 3PL on a clock, flags every paid order missing from the pick queue within the hour, reads the payment timeline for the signatures that predict a skip, chases each gap with the probable cause attached, watches the tracking on the way back, and reports weekly on where the pipe leaked.

P. Singh

How to catch Shopify orders with missing personalization before they ship blank

The order lands on a Tuesday at 9:14 am: a brass pet tag, paid in full, and where the engraving should be there is nothing at all. Not a typo, not a wrong name, just no line. The text your customer typed rides into the order as a line item property, and it dies in more places than most merchants know. Shopify's dynamic checkout buttons have skipped the product form for years: community threads dating back to 2019 report the Buy it now button and express checkouts dropping line item properties, Shopify said the issue was resolved, and merchants kept posting missing engraving text afterward. The required checkbox in Shopify's own UI Elements Generator marks the field but does not enforce it, so a customer can check out straight past a blank. A personalization input pasted outside the product form tag never attaches at all, which is why the classic not receiving customers' engraving text threads end with a developer moving one div. And the order confirmation email does not echo line item properties unless you edit the notification template's Liquid, so the customer who typed Jhon never sees it in time to catch it. Then the chase starts: sellers of personalized goods report it is near impossible to get customers to respond after purchase, orders cancelled for silence, remakes shipped at the merchant's cost when the guess was wrong. Options apps guard the front door with better forms; nothing watches the order that already exists. The AI playbook that reads every personalized order the minute it lands, judges whether the text is something a machine can actually make, blank, gibberish, 42 characters into a 20 character field, holds production before the queue moves, emails the customer naming the exact product and the exact missing line, reminds at 24 and 72 hours, writes the reply back onto the order with an audit trail, and reports weekly which door the blanks came through.

P. Singh

How to stop cancelled orders showing as unfulfilled on Shopify

The orders page says 61 unfulfilled. You walk the list and count 34 that actually need to ship; the other 27 are cancelled or refunded, some closed out months ago, every one wearing the same yellow badge as the order that landed an hour ago. Merchants have been asking Shopify to fix this since July 2021, in a thread that was still collecting replies in June 2026: cancel or refund an order before it ships and the unfulfilled badge is permanent, because order status and fulfillment status are two separate fields that never speak. Shopify has said twice on the record that this is expected behavior, not a bug. The merchants kept receipts: a dashboard reporting 33 unfulfilled with 27 real, a badge stuck at 872 when the true count was less than half that, from a merchant who said it had been like this for over four years and she had simply dealt with looking at 800 plus orders. The stakes are worse than a wrong number. One merchant's 3PL read refunded unfulfilled orders as open work and shipped the items when they came back into stock, to customers who already had their money back: I am losing money to customers who now have both the refund and the item. Another posted screenshots: my warehouse thinks they need to be filled. A third, closing his store, named the cost plainly: cancelled and archived unfulfilled orders stacking up over the years made it difficult to see what needs to go out. The workarounds are folklore: add a $0 phantom item called Order refunded, fulfill it quietly, archive, log out and back in so the count recalibrates, and none of it survives the cancel button, because cancelled orders cannot be edited. Meanwhile the noise buries the queue's one real job: an order that should have shipped Tuesday looks identical to an order that stopped mattering in March. The AI playbook that reads every open order and sorts real from noise, archives the settled clutter with an audit trail, never touches an order that still owes the customer items, keeps the warehouse pick queue honest, ages the real queue against your shipping promise, and delivers the true count every morning.

P. Singh

How to stop fake customer accounts and spam signups on Shopify

The count is there when you open the admin Monday morning: 340 new customers overnight, in a store that logged 19 sessions. The names are keyboard mash, the addresses repeat, and every one of them is subscribed to your newsletter. Merchants have been reporting this for years and are still reporting it now: a March 2024 thread describes hundreds and thousands of fake signups per week wrecking email marketing, and a May 2025 Shopify Plus thread maps the current wave, a bot running more than 18,000 rotating IPs with browser-identical headers, hitting storefront routes to corrupt analytics and backend endpoints to spam carts and mint accounts. The replies read like a casualty list: 1,000 fake accounts a day, 500 abandoned orders a day, domain reputation sliding as welcome emails fire at addresses that report them as spam. Captcha does not stop it: one merchant had both captcha settings enabled and called the result no difference, then hired Shopify Experts who could not prevent it either. Apps operate after the request has already hit Shopify's infrastructure, the fix lives at the WAF level only Shopify controls, and the platform points merchants back to apps. So merchants built their own defense out of Shopify Flow: rules that delete customers when the first name is empty or the address equals a known bot template, and one merchant wiped nearly 50,000 fake accounts that way. The rules work until the bot rotates: Flow matches exact strings, a stray comma breaks the match, every new address template needs a new rule, and the Shopify-to-Klaviyo sync can push a bot profile into your email list before the delete lands. Meanwhile the fallout compounds quietly: ESPs bill by profile count, abandoned cart flows email bots, sessions rise while conversion falls, and Performance Max reads the polluted data as a store that stopped converting and scales your reach down. The AI playbook that reads every new profile the way a merchant's eye does, scores it against the patterns bots cannot hide, quarantines it before the email sync, deletes with an audit trail, sweeps the backlog, alerts on signup storms, and reports what it caught weekly.

P. Singh

How to fix missing HS codes on Shopify before customs holds your orders

The email lands Thursday at 7:52 am, from a customer in Denver: the carrier wants $61.84 in import charges before it will hand over her $78 box of candles, and she wants to know if it is a scam. It is not. It is a blank field. For a decade the two customs fields on a Shopify product, the HS code and the country of origin, could stay empty for a business lifetime, because de minimis let low value parcels cross borders duty free. Executive Order 14324 ended that on August 29, 2025, for every country and every value at once; more than 20 national postal operators paused US-bound parcels that same week rather than guess at the paperwork; the $80 to $200 flat fee window that softened the landing closed at the end of February 2026; and on July 1, 2026 the EU removed its own 150 euro exemption and now charges a flat 3 euro duty per six digit tariff subheading on small parcels, which makes the HS code the unit the bill is counted in, with three mandatory product identifiers per line item following on November 1. Shopify stores both fields per variant with no product level inheritance: a June 2026 feature request counts 17 color variants of one candle needing the same code typed 17 times, and a July reply does the arithmetic, three variants across 400 products is 1,200 fields, most of them the same code. A store level default for country of origin arrived in May 2025; for HS codes there is nothing. Blanks degrade quietly: checkout falls back to estimating duties from the description and product category, the help center warns the estimate is likely to be inaccurate and that the shortfall gets charged to the customer on delivery, and a community thread still active in August 2026 reports duties computed at 95 to 100 percent of price where 3.5 to 5 percent was owed, while the duty calculation fee bills on every order it runs on, even when it ran on blanks. The AI playbook that audits coverage, classifies the catalog with confidence scores and human review, guards every new product the hour it publishes, holds the codeless international order before the label prints, checks checkout duty against carrier invoices, and reports coverage monthly.

P. Singh

How to catch pricing errors on Shopify before orders flood in

The bulk edit saves at 9:41 pm: two hundred prices updated ahead of a supplier increase, and somewhere around row 140 a walnut coffee table drops from $249 to $2.49. Shopify accepts it in a quarter second, asks nothing, and sells it all night, because a wrong price transacts at exactly the speed of a right one. The genre has a history. A pricing engine capped nearly everything on Zappos' sister site 6pm.com at $49.95 from midnight to 6 am in 2010 and cost over $1.6 million, honored in full. A repricer fault sent listings from about 2,000 Amazon UK sellers to a penny for roughly an hour in December 2014, sold one seller's 675 costumes at 1p each, and Amazon told merchants it could not cancel or reimburse what had already shipped. On Shopify every door into the price field is unlocked: the admin, the bulk editor, the CSV import where a regional decimal setting once turned a merchant's €16,99 into €1699,00 on a simple export and re-import, and every app with write scope, including the supplier sync that publishes a 0.00 price when the feed disconnects, which customers can then purchase, as one merchant reported in a thread that collected zero replies. Flow fires an event when inventory moves by one unit and nothing when a price moves by a hundred dollars: staff said in 2022 that the product updated trigger did not exist, and in 2024, plainer, that there is no Shopify event for price updated. There is no price history, no undo, and no record of who changed what. The AI playbook that snapshots the catalog, diffs every price write from every source, judges the change against your own rules, zero, below cost, past the threshold with no sale on the calendar, quarantines first and asks second, holds the orders that slipped in, and turns the worst morning in ecommerce into one message answered from the couch.

P. Singh

How to catch Shopify orders stuck in transit before your customer does

The order ships Wednesday morning: label bought in the admin, tracking emailed automatically, first scan at the regional hub that evening. Then nothing. No scan Thursday, none over the weekend, and by day six the only alert anyone has received is the customer asking whether her package is lost, which is also the first moment anyone at the store looks. Shopify never noticed, because every shipping signal it has fires on an event: a scan arrives and the status chip advances, an email goes out when the order ships, leaves for delivery, and lands, and the fulfillment event model even reserves a delayed status among its eleven. Nothing anywhere fires when events stop coming. If the carrier is not one Shopify recognizes, the order sits on Tracking added for the whole journey and nobody is told the silence is structural. Merchants have asked for the missing alert by name: a 2024 Shopify Plus community thread describes packages traveling two weeks with no tracking update, asks to tag and alert those orders after X days so action beats the complaint, and the staff reply concedes Flow would need you to store the state yourself or lean on Wait steps. Meanwhile the carrier clocks run from the ship date, not from the day you notice: USPS accepts a Missing Mail search seven days after mailing, UPS opens claims 24 hours after the scheduled delivery date passes and wants notice within 60 days, FedEx runs on a similar window, and Descartes found 67 percent of consumers hit a delivery problem in a single quarter and 63 percent of those punished the brand for it. The AI playbook that learns each lane's normal rhythm, flags the stall in days, tells the customer before they ask, opens the trace on the carrier's clock, files the claim inside the window, decides the reship, and reports the lanes that keep going quiet.

P. Singh

How to automate gift card delivery and reminders on Shopify

The order lands Tuesday at 9:41 pm: one $75 gift card, a message that says Happy 30th, Maya, and a send date picked for her birthday two weeks out. The buyer paid with an express checkout button, and that one tap quietly undid the rest, because Shopify's gift card recipient form does not support accelerated checkout: the card mailed itself to the buyer immediately, and the schedule never existed. Nobody finds out until two days after the birthday. Gift cards are the strangest product a store sells, paid in full before they exist, pure obligation afterward, and on Shopify everything after payment is one email and then silence. The email is gated by fulfillment, and gift cards in medium and high risk orders are not automatically fulfilled, so a fraud filter can strand a present without telling anyone. The recipient form is a theme feature, introduced in v9.0.0 of the free themes, missing from vintage ones, off until a checkbox is found in the Buy buttons block. Scheduled sends reach at most 90 days out and go approximately between 4:00 am and 10:00 am in the purchasing customer's timezone, not the recipient's. After creation the admin shows only the last four characters of the code, there is no delivered or bounced state, and no reminder machinery at all: Shopify Flow has no gift card trigger, and Bankrate counts about $27 billion of unspent card value sitting with 43 percent of American adults, an average of $244 each. The AI playbook that chaperones every card from minted to spent: confirms the send, catches the bounce, honors the date on the recipient's clock, wakes sleeping balances at 30 and 90 days, warns before expiry, resends in minutes, and reports the liability monthly.

P. Singh

How to automatically restock returns on Shopify

The cardigan comes back Thursday in perfect condition, the refund went out Tuesday, and the product page has said sold out for a week: the unit that ends the stockout is eleven feet from the door, in a bin nobody owns. Americans returned $890 billion of merchandise in 2024, roughly one online order in five comes back, and every one of those boxes has to cross a doorstep twice, but on Shopify the second crossing has no checkout: restocking is one checkbox inside the refund dialog, selected by default, that adds the unit straight back to available at the location that originally fulfilled the order, the same minute, with no arrival check, no condition step, and no memory if you skip it. Shopify Flow hears every return status you click, Return requested, approved, closed, and has no trigger for the only event that matters, the box physically landing at your door. The API has carried damaged and quality_control inventory states since August 2023, and the returns flow never touches either one. So returns die four deaths: the refund with no restock that bleeds the count low until you reorder stock you already own, the blind restock that sells a worn item as new, the restock at the warehouse the box never reached, and the pile by the receiving door where refunds stall and waitlisted customers buy elsewhere. The AI playbook that watches the return label to your door, opens a receiving task on the delivered scan, grades every box against your written policy, restocks sellable units where they actually sit, routes open-box to the outlet and damaged to the damaged state with shrinkage named, releases the refund the hour the grade clears, chases the boxes that never arrive, and reports the recovery rate every Friday.

P. Singh

How to handle delivered but not received claims on Shopify

The email lands Tuesday at 8:04 a.m.: it says delivered, nothing came, I was home all weekend. The tracking page backs her up and settles nothing, because delivered is a scan, not a doorstep: GPS handhelds mark packages delivered from the truck, drivers batch-scan a loop before walking it, and the standard carrier guidance is that a package marked delivered can surface 24 to 48 hours later. Or it went to the wrong porch. Or it was stolen off the right one. Or she is farming refunds. Each story has a different correct answer, and Shopify cannot tell you which one you are in: the order timeline marches to Delivered and stops, there is no claim workflow, Shopify Protect covers fraudulent and unrecognized chargebacks on eligible Shop Pay orders and a delivered-but-missing dispute is neither, and Shopify Flow's delivery trigger fires on carrier scans, never on a customer typing nothing came. So support refunds by default to close the ticket, which trains the addresses that claim often, or denies by default, which converts honest victims into item-not-received chargebacks you lose without a photo or a signature. Meanwhile the proof exists: FedEx photographs no-signature residential deliveries, UPS attaches delivery photos, USPS records GPS coordinates the local Post Office can read back, and none of it is anyone's job to pull at 8 a.m. The AI playbook that hears the claim on every channel, builds the evidence file in the same hour, runs the 48 hour play with the photo attached, scores the claim against value and history, decides by your policy, executes the reship or refund or denial end to end, and reports the addresses that keep coming back.

P. Singh

How to automatically follow up on unpaid draft orders on Shopify

An interior designer in Savannah emails a lighting studio about twelve brass pendants for a restaurant opening in October. The owner builds the draft order, applies her trade discount, writes a warm note, and clicks Send invoice, and Shopify's part is over: one email, one checkout link, and never a reminder. If she means to pay on Friday and forgets, nothing happens, not to her and not to you, no nudge, no second email, no alert that the quote is going cold. The forums have asked for years, the thread titled How to automate unpaid invoice reminders gets pointed at apps, and the Drafts page fills with open quotes meanwhile. Draft orders are Shopify's quote workflow, the phone order, the Instagram DM, the wholesale inquiry, the pro forma invoice a business buyer needs before paying, and here is the detail that stings: Shopify knows how to send payment reminders, orders with payment terms like net 30 can send up to five scheduled reminder emails, the machinery sits one screen away in the same admin, and draft order invoices are excluded from all of it. The checkout link never expires on any schedule you control either, and because draft prices are locked by default, a months-old email can still pay a price you have since raised. The AI playbook that reads each draft, not just its age, reminds on the cadence the quote deserves, reads every reply and routes it, checks stock before every nudge, retires quotes at your cutoff, escalates the ones worth a phone call, and reports the quote pipeline weekly.

P. Singh

How to sync inventory between two Shopify stores

At 9:41 on a Saturday night the retail store sells the last Meridian hoodie in medium, and forty seconds later the wholesale store sells it again: one hoodie on the shelf, two customers who own it, and neither store did anything wrong. Two Shopify stores are two separate accounts, separate products, separate counts, separate admins, and the number in one store never learns the number in the other exists. Merchants have asked for years whether multiple Shopify websites can share one inventory, and the answer never changes: not natively. One store can track stock across multiple locations and route orders between warehouses, but locations live inside one account, a second store cannot even see that they exist, and Shopify Flow stops at the same wall. Shopify Collective connects two stores, but it is built for two businesses trading with each other, not one stockroom counted twice. So the fallback is the midnight spreadsheet that drifts by the hour, or a sync app whose sharp edges surface on the SKUs that do not match and the last unit both storefronts still race for. The AI playbook that maps every variant to its twin by SKU and reports the blanks, designates the store attached to the physical shelf as the source of truth, mirrors every sale, refund, restock, and correction with the reason attached, holds a buffer so the last units sell in one place only, catches the race when both stores sell the same unit anyway, pauses mirroring during bulk imports, and reconciles the counts nightly so the drift gets named before it becomes an oversell.

P. Singh

How to automatically capture payments on Shopify

The boots ship Monday, the tracking updates, the customer is happy, and the $412 is still sitting in an authorization nobody captured. On Shopify, authorized is not paid: card payments are authorized at checkout and must be captured within the authorization period, 7 days on Shopify Payments, and a store on manual capture that treats fulfillment as the finish line finds out weeks later, reconciling payouts, that the money quietly went back to the customer's bank. The traps are documented and almost never read: capture at fulfillment only fires when the entire order is fulfilled, so every split shipment leaves an authorization running out the clock; the setting only applies to orders placed after it was activated; fulfillment apps that wait for a paid status deadlock against a capture that waits for fulfillment; Plus stores get extended authorization periods of up to 30 days on Visa, Mastercard, and Amex but pay an extra 1.75% on anything captured after day 7; and the only native warning is a single email, one day before expiry, in the same inbox as everything else. Shopify Flow can capture when an order is not high risk, and that is the happy path handled: it cannot wait for your actual fraud process, capture when the first box ships, chase a day-six authorization, choose void over silent expiry, or tell you what almost expired this week. The AI playbook that watches every authorization with its real deadline, captures on the trigger your policy actually names, escalates the expiring ones with evidence attached, voids the cancels so holds release cleanly, recovers the expired with a payment link in the same hour, and reports what it saved.

P. Singh

How to let customers cancel their own orders on Shopify

The request lands seventeen minutes after checkout: wrong size, tapped Request cancellation, confirmation email received, caught in time by any human measure. But on Shopify a pending cancellation request changes nothing: the help center states that a request does not change the order's state on its own, so the order stays in every fulfillment feed, the 3PL pulls it Monday at 6:02 a.m., and the tracking number arrives two messages above the request. The cancel button Shopify added on June 18, 2026, one day before the EU's withdrawal function deadline, files requests and nothing more: no hold, no pause, no Shopify app notification, no legacy account support, and most cancellation intent still arrives by email reply, chat, and DM anyway. So merchants keep refunding orders in full after paying to ship them, then paying again to ship them back, and the customer who did everything right watches the thing she canceled arrive at her door. The AI playbook that hears cancellation intent on every channel, matches it to the right order, holds fulfillment in seconds before any decision is made, cancels the clean cases end to end with refund, restock, tag, and reply, escalates the picked and the shipped with context attached, opens the return path honestly when it lost the race, and reports weekly on what keeps causing the requests so checkout stops generating them.

P. Singh

How to automatically clear dead stock on Shopify

The linen shorts from the April buy stopped selling on June 9, and Shopify never mentions it: no last sold date anywhere in the admin, no aging alert, no report that acts. The products list cannot be sorted by sales recency, smart collections cannot see sales data at all, and Shopify Flow has no trigger for a product that stopped selling, because a product that stops selling emits no event. So dead stock gets discovered at stocktake, months late, and cleared in a panic: a weekend of exports and pivot tables, a hand-built clearance list, a bulk editor session, markdowns that stack with discount codes, and ads still spending on products that died in June. Meanwhile holding the stock costs a quarter to a third of its value a year, and the next purchase order repeats the mistake because nobody told buying. The AI playbook that reads sell-through per product every week, flags what crossed 60, 90, and 120 days with the cash value attached, chooses the right move per product, drafts markdowns against a margin floor with compare-at prices handled and an end date attached, re-merchandises the clearance, watches whether each move worked, and reports the cash freed so the overbuy gets caught at 60 days instead of 200.

P. Singh

How to change a Shopify order from local pickup to shipping

A customer in Marietta, Georgia checks out on her phone in eleven seconds, and the order lands as a pickup at your Denver shop, 1,400 miles away. She never chose pickup: Shopify checkout preselects the cheapest delivery option, local pickup is free, and Shop Pay carried her straight past the choice. Merchants report several wrong-method orders a week, and the community thread asking Shopify to stop defaulting to pickup has been collecting replies for years, with a feature request logged and no timeline. The order cannot be fixed either: order editing does not touch the delivery method, and orders placed with local pickup or local delivery often cannot be edited at all, so the supported path is cancel, refund, rebuild as a draft order, and invoice the shipping. The half workaround of buying a label anyway leaves an order that still says pickup everywhere and never collected a shipping fee. The AI playbook that reads every new order's delivery method against its address, distance, and history, asks the customer the same hour, converts the order cleanly when they meant shipping, confirms pickup when they meant pickup, keeps pickup orders out of the label queue, and counts the wrong-method orders so you can fix the checkout copy that causes them.

P. Singh

How to automatically approve wholesale customers on Shopify

A boutique owner fills out your wholesale application on Friday evening. You find it on Monday, approve it on Tuesday, and her opening order went to another brand on Saturday, because wholesale buyers apply to three brands at once and the fastest yes wins the account. Shopify treats approval as a click it cannot help you make. On Plus, a company account request through Shopify Forms auto-creates the company, the location, and the customer, and then the queue waits for a human: nothing checks the tax ID, reads the website, or notices the applicant is your competitor or your own retail customer fishing for forty percent off. Turn on Restrict access to B2B customers only and the hosted login page shows a single email field with no way to apply at all, a gap merchants have titled Massive Oversight on the community forums. Turn it off and the login box creates an account for any email that asks for a six digit code, which is how retail shoppers end up buying from a B2B-only store. New customer accounts accept no Liquid and no app embeds, so there is no approval hook to build on. The AI playbook that reads each application, verifies the domain, the site, and the tax ID format, sorts the queue into approve, decline, and review, provisions the catalog, payment terms, and tax status in the same pass, and answers every applicant the same day.

P. Singh

How to automatically release Shopify orders on hold when stock arrives

An order sits on hold because one line was short. The pallet lands on Wednesday, the back in stock emails fire, three new customers buy and ship the same afternoon, and the order that has been waiting since Monday is still on hold. Shopify has no trigger for the inventory a held fulfillment order was waiting on arriving. A Shopify staff member said so on the forums in 2023, and merchants were still landing on that thread confirming it in July 2026. The Inventory quantity changed trigger fires, but it hands you a variant and no way to search backward to the held orders that contain it. Flow's scheduled polling workaround has four sharp edges: the release action has no fields and clears every hold on the fulfillment order including fraud and address holds, availability has to be checked at the assigned location rather than store-wide, Get data actions cap at 100 records and a failed query returns all results instead of none, and available is not reserved, so two held orders both get released against the same three units. The AI playbook that finds the held orders a receipt unblocks, reserves before releasing, lifts only its own hold by ID, releases oldest promise first, ships partial when waiting costs more than a second label, and tells the customer once when the wait ran long.

P. Singh

How to stop Shopify routing orders to the wrong warehouse

A customer forty minutes from your Pennsylvania warehouse gets two boxes, one of them from Nevada, against a single flat shipping fee you charged once. Shopify routed it exactly the way its rules say it should. Order routing is a list of rules applied top to bottom, identically, to every order you take: minimize split fulfillments, stay within the destination market, ship from the closest location, plus ranked locations and location metafields if you add them. Not one of those rules reads a shipping rate. Closest means straight-line distance, which Shopify's own documentation admits is not driving distance, and which knows nothing about carrier zones, cutoff times, weekend coverage, or today's backlog. The only capacity signal is a metafield you type by hand and never revisit. The split decision is a single global lever for a question whose right answer changes order by order. Routing happens once at checkout and is never reconsidered when the count was wrong or the location is closed. Flow can move a fulfillment order, but only where every line is stocked, and not once your 3PL has accepted it. Custom rules exist through Shopify Functions, and they are Plus only, by request, shipped as a custom app. The AI playbook that scores every eligible location on landed cost, cutoff, and backlog, decides split or single per order, moves the fulfillment order inside the window, and re-checks when reality moves.

P. Singh

How to sync supplier stock feeds to Shopify without zeroing your catalog

Your distributor drops a stock file at 6am the way they have every morning for two years. This morning they renamed one column, the SKU matcher found nothing, and your sync app did exactly what you configured it to do at setup: it set every unmatched item to zero. Four hundred products are out of stock and not one of them sold. The quieter version costs more, because a feed that parses fine still only lands once a day, so when a bestseller sells out at the supplier at 11am your store keeps taking orders for nineteen hours. Shopify has no concept of a supplier feed anywhere: no scheduled fetch, no FTP client, no column mapping, no reconciliation report. It matches on SKU exactly and case sensitively, its own CSV import wants a Handle that supplier files never carry, and it will let two variants share one SKU. Flow can react to an inventory change but cannot fetch, parse, map, or judge a file. The AI playbook that inspects a feed before it trusts it, matches SKUs that were renamed or re-prefixed, tells a real out-of-stock from a broken export, buffers by velocity, and holds back what looks wrong instead of pushing it live.

P. Singh

How to stop discount code abuse and code sharing on Shopify

You gave one creator a code. Three weeks later it has 900 redemptions, almost all from first-time buyers who never saw the post, because a browser extension found it and now offers it to every cart in your store. Meanwhile your welcome code is on its fourth use by the same person under a fourth email address. Shopify gives you two levers here: a cap on total redemptions, and a limit of one use per customer that is enforced against the email typed at checkout, so a fresh inbox is a fresh customer. There is no leak detection, no alert when redemptions spike, no way to see that a coupon extension is auto-applying your code, and no way to rotate a code without breaking the creator post still driving real sales. Shopify Flow reads one order at a time, and a leak is a shape across many. The AI playbook that learns what normal looks like for every code, tells a leak apart from a good campaign day, retires and replaces the compromised code without declining the honest buyer mid-checkout, and tells the creator before the commission invoice does.

P. Singh

How to catch and cancel duplicate orders on Shopify automatically

Two orders land four minutes apart: same items, same quantities, same address, same card. Somebody double-tapped the pay button on a slow checkout, or retried after a card error that had actually captured, and now one customer has paid twice for one box. Shopify has no duplicate detection anywhere in the admin, so nothing warns you the orders match. Orders cannot be deleted, only canceled, and the processing fees on the refund are generally lost. Shopify Flow cannot make the catch at all, because its Order created trigger sees each order alone and cannot compare line items against the customer's other recent orders. If nobody notices, the 3PL ships both boxes, and if the customer notices the double charge first, it comes back as a chargeback instead of a refund. The AI playbook that looks back on every new order, compares whole orders, judges duplicate or deliberate, cancels the unfulfilled copy before the label prints, and tells the customer before their bank does.

P. Singh

How to block a customer on Shopify from placing orders

A customer has returned nine of eleven orders, and their tenth order just landed in the admin. Every merchant eventually meets this person, the serial returner, the chargeback filer, the harasser, the competitor placing fake orders, and every one of them goes looking for the same button. Shopify does not have it. Deleting or disabling the account only stops the login while guest checkout stays open to anyone with an email address, and fraud analysis is built for stolen cards, so the serial returner paying with their own valid card sails through as low risk. Shopify Flow can cancel a tagged customer's order after the fact, but the payment was already captured, the processing fees are usually lost on the refund, and a plus-addressed alias walks straight past the email match. The AI playbook that keeps a blocklist built on identity instead of one string, screens every new order at creation, decides match or coincidence from the whole record, cancels before fulfillment and restocks, catches the comeback under a fresh alias, and hands the borderline case to a human before a good customer gets burned.

P. Singh

How to notify customers of shipping delays on Shopify automatically

An order sits unfulfilled on day seven of a two-day promise, and Shopify has sent the customer exactly one email: the confirmation at checkout. The next email the platform knows how to send is the shipping confirmation, which cannot exist until the order ships, so the entire stretch where the order is late is a stretch where your store is silent. There is no delay notice template, no trigger for an order aging past its promise, and no bulk email behind the unfulfilled filter. Shopify Flow can find every order still unfulfilled after seven days, then its only email action writes to your own staff, never the customer, and Shopify Email campaigns reach only marketing subscribers, which the anxious guest buyer is not. The AI playbook that watches every open order against its real promise, catches the slip early, diagnoses cause and scope, sends the honest per-order delay email with a new date and options when the wait is long, follows up if the new date slips too, and escalates the orders where an apology alone will not do.

P. Singh

How to merge duplicate customer profiles on Shopify in bulk

One loyal customer creates an account, later checks out as a guest with her work email, taps Apple Pay with a hide-my-email relay address, and buys once at your POS counter under just a phone number. Your admin now holds four strangers, so her lifetime value splits four ways, the VIP segment never sees her, and the welcome discount greets her as new every time. Shopify's native merge combines exactly two profiles at a time, offers no store-wide duplicate detection, refuses any pair with a subscription contract, B2B company link, vaulted card, or store credit, and Shopify Flow has no merge action at all. The AI playbook that sweeps the whole list for duplicates across email variants, shared phones, and matching addresses, decides same person or coincidence from the whole record, merges pair by pair while chaining clusters, queues what Shopify will not merge, and holds the ambiguous matches for a human.

P. Singh

How to stop discount codes from applying to sale items on Shopify

A shopper finds your 40 percent off sale, adds three marked-down items, then pastes the welcome code from your popup at checkout, and Shopify takes both. There is no exclude sale items setting anywhere in the admin, because a sale you run by editing prices is not a discount to the discount engine at all: the combination rules only govern how discounts combine with other discounts, and a markdown is just a price. So codes stack on top of markdowns, popup and loyalty apps mint sitewide codes you never scoped, and your 40 percent sale quietly becomes 46. The AI playbook that reads your discount policy in plain language, keeps the sale and full-price collections true on every price change, scopes every new code at creation, resolves the single best discount when a code meets a markdown, and holds the exceptions for a human.

P. Singh

How to add a gift message and gift wrap option at checkout on Shopify

A shopper buys a present, types a few careful words at checkout, and pays extra to have it wrapped. Then the box lands at the recipient with the sender's full invoice inside and no message anywhere. Shopify has no dedicated gift field: the one native place for a note is the cart order-note box, a single unlabeled field built for delivery instructions, so a gift message shares one box with everything else and never reaches the packing bench. Gift wrap at checkout is native only for Shopify Plus on Checkout Extensibility, and even then it is a bare toggle, not a fee or a bench instruction. Worst of all, the packing slip is one template for every order and it prints prices, with no native switch to hide them for a gift. The AI playbook that captures the gift intent and the message, validates and cleans it, attaches wrap as a real line item, tags the order as a gift, prints a slip with the note in and the prices out, routes it to the bench, and holds the risky calls for a human.

P. Singh

How to set up tiered volume discounts (buy more, save more) on Shopify

You want the obvious offer: buy 3 save 10 percent, buy 6 save 20, buy 12 save 30. You open Shopify's discount screen, build the first tier, go to add the second, and there is nowhere to put it, because a Shopify discount holds one rule and only one. Faking it with three separate discounts backfires: a big cart qualifies for all of them, Shopify does not pick the best tier, and the shopper can land on the smaller saving or the discounts refuse to combine. The one native feature that tiers correctly is B2B only, and Shopify Scripts, the old escape hatch, stopped running on June 30, 2026. There is no native buy-more-save-more ladder for regular shoppers. The AI playbook that reads a plain-language tier table, resolves the single right break by quantity or spend on every cart, keeps it from stacking past a margin floor, gives wholesale a deeper ladder than retail, nudges the shopper toward the next rung, and holds the risky calls for a human.

P. Singh

How to automatically sync bundle inventory with component stock on Shopify

You sell a gift set and the candle, soap, and bath bomb inside it never move a single unit, because Shopify counts the bundle as its own product with its own stock number. So the parts oversell on their own pages, the bundle keeps selling after the shelf behind it is empty, and a shared component drifts out of step across every bundle it lives in. The native Bundles app does link a fixed bundle to its components and shows availability from the lowest-stock part, which is real and useful, but it caps components, does not cover mix-and-match cleanly, tracks by overall stock rather than per location, and does nothing for the many bundles built the older way as a standalone product, and an order edit breaks the link entirely. The AI playbook that treats each component as the source of truth, deducts the parts on a bundle sale and the bundle count on a part sale, cascades a shared component across every bundle that uses it, syncs the count to every channel, and holds the judgment calls for a human.

P. Singh

How to automatically pause ads for out-of-stock products on Shopify

A product sells out at two in the afternoon and your Google and Meta ads keep spending on it until past midnight, sending paid clicks to a page where the only button says Sold Out. Shopify never paused the ad, because it does not pause ads at all. Its Google and Meta channels sync a feed on a schedule, so there is always a lag between the sale that empties your shelf and the feed that admits it, and even then the channel updates an availability attribute, never the campaign or ad set, so a Performance Max or Advantage+ run just shifts the spend around. Worse, the feed and the live page disagree during the gap, so Google disapproves the product and drags on the whole account. The waste concentrates exactly where you bid hardest, on the bestsellers that sell out first. The AI playbook that watches inventory per product and variant, matches each to its placements across Google and Meta, pauses only the affected ad against a stock threshold, fixes the feed so it stops getting disapproved, resumes the moment stock returns, and holds the budget calls for a human.

P. Singh

How to limit purchase quantity per customer on Shopify

You cap a hot product at two per person, the drop sells out in minutes, and the orders list shows one buyer took forty units across twenty tidy little orders, because Shopify's add-to-cart limit is per variant and per cart, not per customer. It resets on every checkout, it counts each color and size on its own, and it never recognizes the same buyer coming back, so a reseller or a bot clears your launch two units at a time while real customers hit a Sold Out page. A theme or cart-page limit is skipped by the wallet buttons, buy-it-now, and a checkout permalink, and the identity underneath (guests, new emails, second accounts, cleared cookies) means only a server-side check that recognizes the buyer actually holds. The AI playbook that identifies the buyer across orders by email, address, payment, and device, enforces a real per-customer limit on every checkout path, cancels and restocks what slipped, and holds the genuine household or wholesale order for a human.

P. Singh

How to automatically add a free gift to the cart on Shopify

You promise a free gift over seventy-five dollars, a customer fills a cart to eighty, and the gift never shows up, because a Shopify discount only makes an item cheaper, it never adds the item. There is no store-wide cart-value trigger, only one gift tier per discount, and a discount that quietly loses to a bigger one, so the gift you advertised either never lands or a shopper who found it can drop below the threshold and keep it. Even a cart-page script skips every wallet-button and checkout-link path. The AI playbook that reads the cart in real time, adds the right gift on every path into checkout, swaps or removes it when the cart changes, honors stock, and holds the edge cases for a human.

P. Singh

How to automatically split and route Shopify orders to multiple suppliers

One order lands with items from three different suppliers, and Shopify treats it as a single thing to fulfill from one place. There is no rule that sends each line to the vendor who makes it, no way to email each supplier a purchase order with just their items, and no button that splits the order by who ships what, so you read every order and paste the right lines into a separate email for each vendor, all day. Shopify can split fulfillment across your own locations, but it never routes a line to a supplier or sends them the order. The AI playbook that reads each order, splits it by supplier, sends every vendor their PO, and fulfills the right lines when the tracking comes back.

P. Singh

How to automatically send invoices to Shopify customers

A business customer buys, then emails: can I get an invoice with our company name and VAT number. Shopify sent them an order confirmation, which is a receipt, not an invoice, with no field that captured their tax number and no button that makes the document they are asking for. So you open a template, retype their details, and email it back by hand, for every business order. Shopify Tax can show a VAT invoice for EU and UK orders, but it is never emailed and covers nowhere else. The AI playbook that sends the right invoice automatically after every order and a credit note on every refund.

P. Singh

How to automatically schedule product publishing on Shopify

You set the drop to publish at midnight and go to bed. It goes live on the online store and nowhere else, because Shopify's future publishing skips POS, the Buy Button, and your other channels, no-ops if the product is still a draft, and cannot bulk-schedule. Worse, it will only ever schedule a product going live, never coming down, so a finished sale or a spent drop lingers until someone pulls it by hand. The AI playbook that publishes a launch on time across every channel and unpublishes it the moment its window closes.

P. Singh

How to set a minimum order amount on Shopify

A customer adds one small item, checks out for a few dollars, and Shopify waves it through, even though the fee, the pick and pack, and the label cost more than the order earns. There is no native setting for a minimum order amount. You can drop cart-page code that a wallet button or a checkout permalink walks straight past, or install an app that applies one flat number to everyone. The AI playbook that reads the cart on every path, sets a real floor, warns the shopper early, and lets wholesale and gift-card carts through.

P. Singh

How to automatically hide sold-out variants on Shopify

A shopper picks their size, the button flips to Sold Out, and they leave, because Shopify keeps the variant they cannot buy sitting in the dropdown next to the ones in stock. They read Sold Out as the whole product being gone, even though the sizes on either side were available. There is no native switch to hide it, only brittle theme code that breaks on updates or one more app. The AI playbook that hides the sold-out variant, keeps the in-stock ones live, and brings it back the moment stock returns.

P. Singh

How to combine multiple orders from the same customer on Shopify

A customer buys, then remembers one more thing and buys again an hour later, before the first order ships. Now you have two orders, two labels, two boxes, and a customer who paid delivery twice for what should have been one parcel. Shopify has no merge button, treats every order as a locked record, and its own fix is a draft-order dance you run by hand: rebuild both orders as one draft, refund the extra shipping, cancel the originals, restock, every time. The AI playbook that catches the pair the moment the second order lands and ships one box.

P. Singh

How to stop card testing attacks on Shopify

You wake up to two hundred orders of one cheap item, all a few dollars, all different names and cards, most already declined. A bot found your checkout and is running stolen cards through it to see which ones still work, and Shopify billed you a fee for every attempt. Its native defense is a CAPTCHA that fires too late and an auto-cancel rule locked to the pricier plans, and neither one reads the burst or cleans up behind it. The AI playbook that spots the attack, cancels and refunds the junk, and shuts the source down before it costs you the payment account.

P. Singh

How to set up pre-orders on Shopify without holding in-stock items

A customer buys one in-stock hoodie and one pre-order jacket in the same cart, and the hoodie sitting on your shelf does not ship until the jacket lands weeks from now. Shopify has no real pre-order, only a continue selling checkbox that oversells in silence: no ship date, no tag, no Pre-order button. Nothing splits a mixed cart, partial fulfillment is a manual step per order, and Flow cannot ship the ready part, notify on restock, or stop selling when the run is gone. The AI playbook that ships what is ready now, holds the pre-order line, and fulfills the day stock arrives.

P. Singh

How to reconcile Shopify payouts with your sales

Your dashboard says you sold four thousand dollars, but the deposit that lands in your bank is smaller, days late, and arrives with no breakdown. Shopify nets every payout down by fees, refunds, chargebacks, and a held reserve, then pays it in a batch that crosses days, so the deposit never matches your sales. The Payouts page reports but posts nothing, the QuickBooks and Xero connectors double count or never tie out, and Flow cannot reconcile at all. The AI playbook that decomposes every payout, matches it to the orders and the bank deposit, and posts a clean entry to your books.

P. Singh

How to bulk edit product prices on Shopify

A supplier cost went up, a tariff landed, or your margin slipped, and now every price in the catalog needs to move. Shopify's bulk editor shows fifty products at a time and has no math, so you compute and type each new price by hand. The CSV route turns you into a spreadsheet clerk, the Markets percentage tool is all or nothing for a whole market, and Flow cannot touch a price at all. The AI playbook that reprices by rule, applies your rounding, keeps compare-at honest across variants, and holds the outliers for a human.

P. Singh

How to automatically add tracking numbers to Shopify orders

Most orders don't fulfill themselves on Shopify, bulk fulfill still leaves the tracking to you, and Flow has no action that adds a number. The AI playbook that reads what suppliers send and fulfills with the right number and carrier.

P. Singh

How to fix 404 errors from deleted products on Shopify

You discontinue a product and delete it, and the job feels done. It is not. The old URL is still indexed by Google, still sitting in an ad you forgot to pause, and every click on it now lands on a Shopify page that says the page does not exist. Shopify created no redirect, so the ranking drains and the customer bounces, and Flow cannot create a redirect at all. The AI playbook that catches every URL a delete, unpublish, or handle change just broke, and sends each one to the closest live page instead of a dead end.

P. Singh

How to automatically cancel unpaid orders on Shopify

A customer picks bank transfer or cash on delivery, then goes quiet. The money never lands, but the order does not go away. It sits in your admin marked pending, holding the stock a paying customer wanted, until you clear it by hand. The AI playbook that reads each pending order, chases payment the right number of times, then cancels and restocks the ones that go cold.

P. Singh

How to automatically request product reviews on Shopify

Every happy customer is a five-star review you have not asked for, and the next buyer reads those reviews before they trust you. Shopify retired its own reviews app and never replaced it, so there is no native way to collect a single one. The ask either never goes out or goes out as one untimed blast to the whole list. The AI playbook that waits for delivery, reads the order, and asks for the right product at the right moment.

P. Singh

How to segment repeat customers on Shopify

You have customers who have bought from you five times. Shopify knows it and does nothing with it. Without a tag set by hand, a loyal regular, a one-time discount hunter, and a customer about to leave for good all look identical in the admin, so they all get the same generic blast. The AI playbook that reads each customer's whole history, tags them by what they actually do, and keeps the segment current.

P. Singh

How to add alt text to Shopify product images in bulk

Shopify will store an alt text on every image. What it will not do is write one, show you which images are blank, or fix them in bulk. So the line a screen reader reads aloud, and the line Google ranks your photos on, sits empty on nearly every image in the catalog. The AI playbook that looks at each picture, writes an accurate line, leaves the decorative ones empty, and keeps it current as you add products.

P. Singh

How to generate Shopify product descriptions with AI

Shopify Magic will write a product description, one product at a time, from a few keywords you type in. A real catalog is hundreds of products, each with its own variants, a spec sheet, images, and a brand voice the generator never sees. So the copy gets written one SKU at a time, pasted from the supplier, or left blank. The AI playbook that reads each product whole and writes the entire catalog in one consistent voice.

P. Singh

How to automatically tag orders on Shopify

Shopify Flow will tag an order the moment one simple thing is true. The trouble is that real tagging is never one simple thing: it is the product, the order value, who the customer is, where it ships, and the line a buyer typed into the note, all read together. So the tags that route fulfillment, fire your flows, and build your segments still get set by hand. The AI playbook that reads the whole order and tags it from one clean vocabulary.

P. Singh

How to bulk edit meta descriptions on Shopify

Shopify will store a unique meta description for every product, but it will not help you write them. Bulk edit and they all come out identical, which is the one thing you must not do. So you type each one by hand, or leave it blank and let Shopify fill the search result with whatever the page starts with. The AI playbook that writes a distinct, in-range description for every product, collection, and page, and never lets it drift.

P. Singh

How to schedule a sale on Shopify

Shopify will let you drop a price, but it won't schedule the sale to start, won't put the prices back when it ends, and won't run it by rule. So a real person sits up at midnight to flip prices, babysits the promotion, and hopes they remember to undo it. The AI playbook that schedules the sale, sets the strikethrough, guards the margin floor, and reverts on time.

P. Singh

How to set inventory reorder points on Shopify

Shopify tracks every unit you own but will never buy more of it, and its purchase orders are too basic to know which SKU to reorder, how many, or when. So bestsellers go dark for weeks while cash sits frozen in slow movers. The AI playbook that forecasts demand per SKU and drafts the purchase order on time.

P. Singh

How to set up an abandoned cart email sequence on Shopify

Seven in ten carts get filled and left, and Shopify answers with a single generic reminder on a preset timer, then goes quiet. On one-page checkout it often never learns the email at all. The AI playbook that sequences, personalizes, and brings back the demand you already paid to create.

P. Singh

How to push sold-out products to the bottom of a Shopify collection

A product sells out and Shopify leaves it at the top of the collection page, a grayed-out tile greeting your best traffic. The native sort breaks across pagination and hiding it kills the SEO and the waitlist. The AI playbook that re-merchandises the storefront the moment stock moves.

P. Singh

How to set up back-in-stock notifications on Shopify

A customer clicks notify me, the item comes back, and Shopify does nothing with the request, so the restock sells out to strangers while the people who waited never hear. The AI playbook that turns a waitlist into recovered revenue, in fair order and without overselling.

P. Singh

How to win chargeback disputes on Shopify

Shopify attaches the basic order data and files a thin response on the deadline, so you lose disputes you should win, even with the tracking in hand. The AI playbook that reads the reason code, builds the evidence, and fights it before the clock runs out.

P. Singh

How to automate returns and exchanges on Shopify

Every return waits on you to click approve, and Shopify can't run a real exchange, so refunds quietly leak the revenue you already earned. The AI playbook that reads the request, runs the swap, and settles the money on its own.

P. Singh

How to edit a Shopify order after it's been placed

Wrong size, wrong address, one more item: the "can you change my order?" email always lands at a bad time and locks the second you fulfill. The AI playbook that reads the request and resolves it before the label prints.

P. Singh

How to validate shipping addresses on Shopify

Shopify warns you the address looks wrong, you ship anyway, and the package bounces back two weeks later: return fee, re-ship, refund, angry ticket. The AI playbook that fixes or confirms a bad address before the label ever prints.

P. Singh

How to handle high-risk orders on Shopify

Shopify stamps an order "high-risk" and hands the call back to you with half the evidence hidden, a coin-flip between a chargeback and a false decline. The AI playbook that investigates each one instead of guessing.

P. Singh

How to prevent overselling on Shopify across channels

Selling stock you no longer have is the Shopify pain point merchants dread most, because it's the hardest to take back. Why manual sync breaks during a sale, and the AI playbook that keeps inventory honest in real time.

P. Singh

How to reduce 'where is my order?' (WISMO) tickets on Shopify

WISMO is the most common message in ecommerce: ~18% of support tickets, over half during a sale. The AI playbook that answers before customers even ask.

P. Singh

The best Shopify automations to set up

Tagging is 14% of every Shopify workflow merchants ship. Returns and refunds, the work that actually scales with order volume, are under 1%. The gap between what's easy and what's worth it.

P. Singh

Triggers are the new APIs

When every step is natural language, the trigger becomes the only thing you really design. Here's what we learned watching 12,000 teams write their first one.

MAY 24 M. Chen

The night our retry logic ate itself

A Slack notification fired every 4 seconds for 11 hours. The blameless story of how we found it, what the AI shield missed, and the fix.

MAY 21 J. Okafor

Seven prompts that compile cleaner playbooks

Small wording changes that shift our compiler from "good enough" to first-try perfect. Steal them.

MAY 19 L. Park
πŸ”€

Branching is a writing problem

Why "if," "unless," and "when" are the three most undervalued words in automation, and how clearer prose produces cleaner conditional logic.

MAY 16 A. Rao

"We deleted 400 Zapier zaps in a weekend."

A conversation with the ops lead at a 600-person fintech on consolidating four years of brittle no-code automation into eleven AI-compiled playbooks. Plus the spreadsheet they used to audit everything.

MAY 13 w/ K. Hartman

A taxonomy of "the workflow broke"

Six failure modes we see in support tickets, ranked by how often the AI shield catches them before you do.

MAY 09 R. Diaz

On naming things the AI will read later

Variable names, channel names, sheet tabs: they're all prompts now. A small style guide for teams whose workflows write themselves.

MAY 06 M. Chen
"

The best playbook is the one your replacement can read on a Tuesday afternoon and understand by lunch.

FROM ISSUE 46 β€” A. Rao
β—† BROWSE BY TOPIC
shopify dimensional weight product dimensions shipping rates duplicate SKUs catalog hygiene SKU collisions expiry dates batch tracking short-dated stock vacation mode pause and build store breaks pickup reminders uncollected orders local pickup confirmation emails email deliverability missing receipts inventory drift phantom inventory adjustment history shipstation sync missing orders 3PL integration missing personalization line item properties engraving orders cancelled orders unfulfilled badge order archiving fake accounts spam signups bot traffic hs codes customs delays country of origin pricing errors wrong price orders price change alerts stuck in transit tracking not updating stalled shipments gift card delivery gift card reminders unspent balances restock returns returns receiving inventory shrinkage delivered but not received package marked delivered porch piracy claims draft order follow-ups unpaid invoices quote reminders two-store inventory sync multi-store stock oversell between stores payment capture expired authorizations authorized but not paid self-serve cancellations cancel requests order cancellation dead stock slow movers markdown automation pickup to shipping wrong delivery method local pickup orders wholesale approval b2b account requests wholesale vetting held orders release fulfillment hold backorder automation order routing wrong fulfillment location split shipments supplier stock sync inventory feed errors discount code abuse leaked coupon codes block a customer serial returners shipping delay emails delayed order notifications merge duplicate customers customer deduplication discount stacking exclude sale items gift messages gift wrap at checkout tiered volume discounts buy more save more bundle inventory sync component stock pause ads out of stock wasted ad spend limit quantity per customer purchase limits free gift with purchase auto-add to cart split orders by vendor multi-vendor fulfillment order invoices VAT invoices minimum order amount order minimums scheduled publishing product drops 404 redirects broken links meta descriptions product SEO product descriptions bulk copywriting image alt text image SEO order tags order routing tracking numbers order fulfillment unpaid orders pending payment review requests product reviews customer segments VIP tagging wismo inventory sync overselling reorder points purchase orders scheduled sales price changes bulk price editing repricing back in stock restock alerts merchandising collection sort abandoned cart cart recovery fraud review card testing bot orders combine orders order merging duplicate orders charged twice hide sold-out variants variant visibility pre-orders backorders payout reconciliation Shopify bookkeeping chargebacks disputes address validation fulfillment support returns exchanges refunds
β—† FROM THE ARCHIVE
browse the recent dispatches ↑
◆ ABOUT THE AUTHOR

Priya Singh

Commerce Research, Dugong

Priya researches Shopify operations failure modes and writes the Dugong Field Notes commerce playbooks. Her raw material is merchant communities, Shopify changelogs, and the telemetry of 1,374 real automation workflows: authorizations that expire uncaptured, inventory that oversells across channels, fraud flags that punish good customers. Every dispatch is written as a playbook a merchant can actually run. Start with her field study of the best Shopify automations to set up, or follow new dispatches by RSS.

◆ Ready when you are

Stop configuring. Start describing.

Write your workflow in plain English and an AI agent runs it — calling your apps directly. Your first automation takes under five minutes.

Try Dugong now → free · no credit card required
← back to field notes

The death of the drag-and-drop builder.

For fifteen years, workflow automation looked like a canvas of rectangles connected by lines. After watching three million runs across twelve thousand teams, we're convinced the canvas was always the problem.

There is a particular kind of fatigue that sets in around the twentieth node of a Zapier zap. You know the one. The connecting lines start to cross. The error-handling branch you added last week now has its own error-handling branch. Someone on the team named a step "Step 7 (FINAL) (USE THIS ONE)." You open it on a Monday morning, stare at the canvas for forty seconds, and quietly close the tab.

We've spent the past eighteen months instrumenting that moment. What we found surprised us: the canvas isn't failing because the workflows got more complex. The workflows got more complex because the canvas required them to be.

The canvas tax

Every drag-and-drop builder shares an unspoken bargain: in exchange for a visual representation of your logic, you agree to express that logic in nodes. One node, one action. Two actions, two nodes and a line. A branch becomes a diamond and three lines. A retry becomes a node that points back at itself in a way that looks vaguely alarming.

The canvas didn't help us think clearly about workflows. It forced us to think about nodes.

The cost shows up in our data. Across the 12,000 teams we studied, median Zapier zaps grew 31% in node count year over year, but the work they accomplished grew by only 9%. The rest was scaffolding: wrapper nodes, formatter steps, lookup nodes, glue. The canvas was eating itself.

β—† DATA Of 8,400 workflows audited, 43% of nodes existed only to translate data between two other nodes. They did no real work; they were grammar. The canvas charged a tax in rectangles.

The natural-language alternative

What happens if you stop drawing the workflow and start describing it? We thought we knew. We assumed natural language would be a thin layer over the same model, a different input method for the same canvas. It is not.

Here is a workflow our customer Anika at Resend wrote on a Tuesday afternoon, in plain prose, in our editor:

# trigger
When a new customer signs up on our website

# steps
1. Look up their company info using Clearbit
2. Score the lead with AI: company size, industry, role
3. If score > 80, create a Salesforce deal + assign rep
4. Send a welcome email via Gmail with their name
5. Log to Google Sheets and post to Slack #signups

What the compiler produced from this prose was an 8-node playbook with one branch, five API integrations, and, critically, an error shield Anika never asked for, because the AI knew Clearbit sometimes times out and Salesforce sometimes rate-limits.

In a drag-and-drop tool, Anika would have spent the next two hours adding retry logic, formatter steps, and conditional fallbacks. In ours, she spent six minutes describing what the workflow should do, and the compiler handled what it should be.

The compiler is the product

The interesting work, it turns out, isn't the editor. It's the compiler. Translating "if the score is high" into a branching condition is the easy part; what's hard is knowing that the score might be missing, that the field might be a string instead of a number, that the Salesforce API will occasionally return a duplicate-key error and you should treat that as success.

That kind of knowledge isn't visible in the editor. It lives in the compiler. And once you accept that the compiler is doing the real work, the editor stops needing to look like a canvas. It can look like writing.


Three predictions

We think the next three years of workflow automation will be shaped by three forces:

  • Workflows will be read more than written. The unit of authorship becomes the prose, not the diagram. Reviewing a teammate's workflow becomes reading a paragraph instead of tracing arrows.
  • Error handling moves below the line. Retries, fallbacks, and rate-limit logic will be invisible unless you ask to see them. The compiler will assume you want them; you'll opt out, not opt in.
  • Integrations stop being a menu. "Send to Slack" is enough. "Update the CRM" is enough. The resolver picks the tool. You don't browse a directory of 4,000 apps; you mention what you need.

None of this means the canvas disappears overnight. There are workflows where a diagram is genuinely the right representation: complex state machines, multi-week orchestrations, anything with significant parallel branches. But those are a minority. For the long tail of "when X happens, do Y and Z," prose is better. It always was. We just didn't have the compiler.

β—† READING If this argument interests you, three pieces to follow it up with: our post-mortem on the retry-loop incident, the interview with Kira Hartman on consolidating 400 zaps, and Mei's essay on naming things the AI will read later.

We'll keep writing as the data accumulates. If you're building workflows, in any tool, and you want to share what you're seeing, the inbox is open: field-notes@dugong.live.

research essay
share · copy link · ✦
◆ Ready when you are

Stop configuring. Start describing.

Write your workflow in plain English and an AI agent runs it — calling your apps directly. Your first automation takes under five minutes.

Try Dugong now → free · no credit card required