Readyby help and guide

Let customers choose when their order is ready, for store pickup or local delivery, with real lead times, so every order is one you can actually make on time.

Forty seconds: a lead time set per product, a mixed cart keeping a date on each line, and the date landing on the order. Watch on YouTube →

What Readyby does

Readyby adds a date picker to your product pages. A shopper chooses pickup or local delivery and a ready-by date (and an optional time slot). Readyby offers only the dates your schedule allows. It enforces your lead time, a same-day cutoff, your open days, any closed days, and a daily capacity cap, so a day that has reached its limit stops being offered. The chosen date and method are saved to the order, so your team knows exactly what's due and when.

Before you start: three Shopify settings Readyby depends on

Read this first. Readyby records when an order is collected and how. Shopify decides what your checkout actually offers and charges. They are separate systems, and Shopify does not let any app read or change your delivery configuration, so if these are not set, Readyby will look broken when the problem is one toggle in Shopify.

  1. Your location must be able to fulfill online orders, by some method. Go to Settings → Locations, open your location, and look at Fulfillment. The main toggle (“Use inventory at this location to fulfill online orders”) must be on, and so must at least one of Shipping, Local delivery or Pickup in store. On a brand-new store all three are frequently off.
  2. Offering store pickup? Turn on Shopify’s Local pickup. Settings → Shipping and delivery → Local pickup, enabled for your location. Readyby records the customer’s choice; this is what makes checkout offer pickup instead of asking for a shipping address.

    In the same place, set Order ready for pickup to the longest option, Usually ready in 5+ days, and write something like “Ready on the date and time you chose at checkout.” in Pickup instructions. Shopify uses that ready time to show its own estimate on the order, such as “Pickup tomorrow at 9:57 am”, and it has nothing to do with the date the customer picked in Readyby. Whatever it says, go by the Readyby date and time on the order (Ready by and Time), on your slips and in Upcoming orders.
  3. Offering local delivery? Set it up in Shopify too, with matching prices. Settings → Shipping and delivery → Local delivery, enabled for your location, with a delivery zone (ZIP codes or a radius) and a rate. Turning local delivery “on” without defining a zone covers nowhere. Readyby cannot charge a delivery fee, the fee in Readyby is shown to the shopper, and Shopify collects the real one. Set them to the same number.

    While you are in that zone, fill in Delivery information with something like “Delivered on the date you chose at checkout.” That message appears under the delivery option at checkout and again in the order confirmation email. Shopify also adds its own estimate (usually “Ships next business day”) right above your message, which contradicts the date your customer picked. Turn that off under Settings → Shipping and delivery → Delivery estimates: choose Off and save.

    For the same reason, set Settings → Shipping and delivery → Delivery estimates to Off. Automated dates are guesses, and guesses beside a chosen date read as a mistake.
  4. Enable local delivery on the location Shopify actually routes to, which may not be the one holding your stock. Shopify picks a fulfillment location from your inventory and order-routing rules, and only then checks whether that location has a delivery zone covering the customer. If you have more than one location, the safest move is to enable local delivery on all of them, or reduce yourself to one. Nothing in the admin tells you which location a given order will use, so this is otherwise invisible.
  5. Check your location’s address is in the right country. Local delivery zones are scoped to the delivering location’s country, so a location whose address is in one country can never deliver to another. New development stores are seeded with a placeholder address (often 123 Main St, Toronto, Canada) and it will silently defeat every delivery zone you set up until you change it.

If something looks wrong, check here first

What you seeWhat it actually is
Every product shows as sold out, but the admin shows stockYour location has no delivery methods enabled. Shopify has inventory it may sell and no way to deliver it. Turn on Shipping and/or Pickup in store.
The date picker doesn’t appear on a productA sold-out product hides the picker on purpose. Fix the sold-out cause above. Also check the product isn’t excluded under Product rules, or, if Schedule is set to Only the products I list, that it is listed there with Schedulable ticked.
A customer chose pickup but checkout asks for a shipping addressShopify’s Local pickup is not enabled for that location. Setting 2 above.
A customer chose local delivery but checkout charges a shipping rateShopify has no local delivery zone matching that address, so checkout falls back to the only method it has. Check, in order: the zone exists and contains their postal code; your location’s address is in the same country as the customer; and you’re testing in a fresh browser session, because checkout caches delivery options hard.
You typed the address by handShopify requires the delivery address to be verified by Google, picked from the dropdown as you type, not typed out in full. An invented street silently disables local delivery no matter how the zones are set.
Local delivery works on one location but not anotherEnable it on every location that could fulfill the order. Shopify chooses the location first and checks the zone second.
Checkout shows Ship and Pickup but no delivery optionLocal delivery is enabled but its zone doesn’t cover the address entered. A quick tell: when local delivery is available, Shopify makes the phone field required, if it still says “optional”, the address isn’t matching a zone.
Checkout says something like “Ships next business day” next to your delivery optionThat is Shopify’s own estimate, not Readyby’s date, and it will contradict the date your customer picked. Set Settings → Shipping and delivery → Delivery estimates to Off, and fill in the Delivery information field on your delivery zone with something like “Delivered on the date you chose at checkout.” That field shows at checkout and in the order confirmation email.
The order says Pickup tomorrow at 9:57 am (or similar) but the customer chose a different dayThat is Shopify’s own pickup estimate, worked out from your location’s Order ready for pickup setting, not the customer’s choice. Ignore it and go by Ready by and Time on the order. To make it less confusing, set Order ready for pickup to Usually ready in 5+ days under Settings → Shipping and delivery → Local pickup (setting 2 above).
The delivery fee at checkout doesn’t match the one on the product pageThe two are set separately and have drifted. Readyby displays; Shopify charges. Make them match.
Nothing appears on the storefront at allThe theme block hasn’t been added. Readyby never places it for you, see Getting started below.
Why can’t Readyby just do this for me? Shopify provides no API for local delivery or pickup configuration, zones, postal codes, radius and pricing are all Admin-only. The only way for an app to control delivery pricing is the Carrier-Calculated Shipping API, which requires a Shopify plan costing several hundred dollars a month. Readyby deliberately doesn’t use it, so it works on every plan.

Getting started

  1. Install Readyby and open it from Apps in your Shopify admin.
  2. Set your schedule. Go to Schedule and set your lead time, same-day cutoff, open days, capacity, and which methods you offer (pickup, local delivery, or both). Turn on “Show the date picker on my storefront.”
  3. Add per-product lead times (optional). Under Product rules, give specific products their own notice and the days they can be ready. A custom cake might need 72 hours and only be made Friday to Sunday, while cookies need 24. A product’s own hours replace your store default for that product, shorter or longer; leave them blank to use the default. Adding or removing products, and any change to hours or days, takes effect when you click Save.
  4. Add closed days. Under Blackout dates, add holidays, vacations, or fully-booked days. Closed for a stretch? Set a last day closed and the whole range is blocked as a single entry. Tick Every year for holidays that fall on the same date each year, then press Save in the bar at the top. Shoppers see the Reason: a closed day on the calendar says “Closed: Thanksgiving” when tapped or hovered, Days that are full say “Fully booked”, the weekdays you’re closed say “Closed”, days inside your notice time say “Needs more notice”, and days a product isn’t made (Product rules) say “Not available on this day”. You can change these words under Settings, Storefront text, Wording and translations, and with the dropdown style you can list those days greyed out with the reason too: set Days that can’t be picked, in the date list to Show them greyed out (they are left out by default), then tick which kinds to list: blackout dates, days you’re closed, product rule days, fully booked days and notice days.
  5. Add the picker to your product pages. Use the “Open my theme editor” button on the home screen or on the Schedule page. Readyby does not place the block for you. You choose where it goes. Open your product template, then in the product section click Add block → Apps → Readyby date picker. Shopify adds new blocks at the bottom of the section, under your description, so drag it up so it sits directly beneath Add to cart and Buy it now, then Save. Left at the bottom it gets lost below the description and most shoppers never scroll that far.
  6. Add the picker to your cart page too. In the theme editor switch the template to Cart, then Add block → Apps → Readyby cart picker and place it above the Checkout button. This catches shoppers who never saw a product page: quick add, a cart drawer, or a direct link.
  7. Cart is a slide-out drawer? Many themes open the cart as a drawer, and some send the drawer’s button straight to checkout, so shoppers never see the cart page. In the theme editor open App embeds, switch on Readyby drawer picker and Save. The date picker then appears inside the drawer, just above the checkout button, for anything in the cart that still needs a date. The date chosen there (or on the cart page) is written onto each item, so shoppers see it under the item at checkout. It takes your theme’s font and everything you set in Readyby (colors, calendar or list style, wording, notice and delivery zones). Words, colors or CSS you typed into the cart picker block in the theme editor stay with that block, so if you translated the picker there, put the same words under Storefront text in Readyby so the drawer uses them too. The drawer picker has its own Custom CSS box. It stays out of the way on the cart page and wherever you have placed the cart picker block.
  8. Switch on the cart guard. In the theme editor open App embeds at the bottom of the sidebar, switch on Readyby cart guard and Save. It stops a shopper checking out with a date that has since closed or filled up, for example someone who added to cart and came back days later. There is nothing to place: it does nothing until a cart holds one of your dates.
The date picker and the cart picker are theme blocks you add to the page itself, where shoppers pick their date. The cart guard and the cart drawer picker live in the App embeds panel. Add it once to your default product template and it appears on every product. To show it on only some products, choose Only the products I list under Which products can be scheduled on the Schedule page, then add those products under Product rules. You never need a second template for this.
Seeing two date pickers on one page? The block has been added twice. Open the theme editor, click the duplicate block in the left-hand list, and remove it. Add one date picker to your product template and one cart picker to your cart template.
Using an add-ons or product options app? Apps that add extras like cake text, candles or gift wrap often take over the Add to cart button and send only their own choices. Readyby notices that and adds the date, method and time to the same cart line a moment later, keeping your add-ons as they are. Nothing to set up. If the date still doesn’t show in the cart with an add-ons app, email support@dropfeed.io with the app’s name.
Already asking for a date another way? If your product page has a date or time field from a product options app, a form app or your theme, remove that field or hide it on the products Readyby covers. Otherwise shoppers are asked for a date twice, and only the Readyby date follows your lead times, cutoffs and limits.

Is the date picker on my store?

The home page shows a status line. A green pulsing dot and Online mean the date picker has loaded on your store in the last two weeks, with when it last did. Red means it has shown before but not lately, so check the Readyby block is still in your theme. Grey means scheduling is switched off.

If your theme has no place to add the block

Most current themes let you add an app block inside a section, but not all of them do, and themes do not agree on what to call it. Some say Add block, others say Add feature or Add element. Before assuming your theme cannot do it, click into the product section itself rather than the page, and look for an Apps group in whatever add list appears. App blocks only live inside a section, so looking at the page level shows nothing.

If there is genuinely no Apps group in any section on your product template, you can place the picker by hand. Open Online Store → Themes → … → Edit code, find the template or section that renders your product page, and paste this where you want the picker to appear, usually just after the Add to cart button:

<div class="readyby"
  data-proxy="/apps/readyby"
  data-context="product"
  data-product="{{ product.id }}"
  data-currency="{{ shop.currency }}"
  data-available="{{ product.available }}"
  data-variants="{% for v in product.variants %}{{ v.id }}:{% if v.available %}1{% else %}0{% endif %}{% unless forloop.last %},{% endunless %}{% endfor %}">
  <p class="rb-loading">Loading available dates&hellip;</p>
</div>
<link rel="stylesheet" href="/apps/readyby/asset/readyby.css">
<script src="/apps/readyby/asset/readyby.js" defer></script>

That is the whole install. Everything you set in the app still applies: lead times, blackout dates, capacity, pickup and delivery labels, and your wording. The picker keeps updating with the app, because those two files are served by Readyby rather than copied into your theme.

Two differences from the block version. The look is the default one, since the colour and spacing settings live on the block, so use your theme's own CSS if you want to restyle it. And if you have Require a date before add to cart switched on, the buy buttons are held a fraction of a second later than with the block, because the block can tell the picker that setting before any JavaScript runs. Nothing can be bought without a date either way.

Paste it once into the template every product uses. Which products then show it comes from Which products can be scheduled on the Schedule page and from Product rules, exactly as with the theme block, so keep the snippet in your main product template where it sits next to the buy button. Moving it to another file to limit where it appears is not needed and usually puts it in the wrong place on the page. For the cart picker, use the same snippet with data-context="cart", no data-available or data-variants lines, and this data-product line instead, so the picker knows what is in the cart. Paste it into your cart template above the checkout button.

  data-product="{%- assign sep = '' -%}{%- for item in cart.items -%}{%- if item.properties['Ready by'] == blank -%}{{ sep }}{{ item.product_id }}{%- assign sep = ',' -%}{%- endif -%}{%- endfor -%}"

That line lists the cart items that do not already have a date from the product page. With it in place the cart picker follows the same rules as the theme block: it appears only when one of those items can be scheduled, and uses the longest lead time among them.

How available dates are decided

For any product, Readyby starts from “now” in your store's time zone and removes any date it can't safely offer:

All timing is calculated in the time zone you set: not the shopper's, so “same-day before 2pm” always means your 2pm.

Pickup & local delivery

Set this once in Shopify, or pickup orders get charged shipping. Readyby records when an order is collected and how; Shopify decides what checkout actually offers. Go to Settings → Shipping and delivery → Local pickup and turn pickup on for your location. Without it, a shopper who chose “store pickup” in Readyby still gets asked for a shipping address and charged a shipping rate. The same applies to Local delivery: Readyby shows your fee, but the actual charge comes from a matching Shopify local delivery rate.

Store pickup is on every plan. Local delivery is a Starter feature (so are shipping dates): you can configure it on Free, but shoppers only see it once you subscribe. For local delivery you can limit it to specific postal codes (one per line, or a wildcard like 902*). For US stores you don’t have to type them: under each zone, Fill in ZIP codes for me adds every ZIP within a distance of a ZIP you choose (for example everything within 10 miles of your shop), or every ZIP in a city and state. They are added to the list for you to check, edit and save. A shopper outside your zones is told so and can only continue with pickup. Leave the list empty to accept anywhere. You can also enter a delivery fee, which Readyby displays on the product page so shoppers know what to expect; Readyby can’t add money to a Shopify cart, so set the actual charge under Settings → Shipping and delivery → Local delivery and it applies at checkout. You can rename the methods under Storefront text (pickup, delivery and shipping labels) (e.g. “Curbside pickup,” “Local drop-off”), which also lets you translate the picker for non-English stores. You often don’t need to: on a Spanish, French, German, Italian or Portuguese store, any wording you leave blank (and the pickup, delivery and shipping names if you kept them as they came) shows in that language automatically.

Shipping dates

For orders you post or courier. Shipping dates is a Starter feature, off until you tick Offer shipping dates under Settings → Shipping dates. Shoppers then see a third choice next to pickup and delivery (named Shipping; rename it under Storefront text → Shipping label), and the date list switches to your ship days. If you show the next available date, it switches too, to your first ship day (or arrival day).

The ship day is saved on the order as Ready by, like any other date, so it shows in Upcoming orders (with a Shipping filter), the calendar feed and order tags (shipping). With arrival dates the order also gets Estimated arrival (orders placed before 21 October 2026 show it as Arrives by). Readyby doesn’t book carriers or change shipping rates; those stay in Shopify. There are no time windows for shipped orders.

Why you choose pickup or delivery twice

Readyby asks how you want the order on the product page, and Shopify asks again at checkout. That is not a bug, and no app can remove it, Shopify does not let apps preselect or read the checkout delivery method.

Asking early is still worth it: it’s how a shopper outside your delivery area finds out before filling a cart and typing an address, instead of after. Your choice in Readyby is recorded on the order as Requested, next to what Shopify actually charged for, so if the two ever differ, you can see it.

The note under the options (“You’ll confirm this again at checkout”) is editable in the theme editor like every other word in the picker. Type a single space in that field to hide it.

Requiring a date

Turn on “Require a date before add-to-cart” to make the picker mandatory. While no date is chosen, Add to cart and Buy it now are both dimmed, and hovering either one shows “Choose a date first.” Clicking anyway scrolls the shopper back to the picker with a short message rather than doing nothing. Leave the setting off to keep the picker optional.

The requirement covers the dynamic checkout button (“Buy it now” / Shop Pay) as well as Add to cart, so a shopper can’t skip the date by jumping straight to checkout. Add the Readyby cart picker block to your cart page too, and the same requirement applies to shoppers who arrive there from a quick-add or a cart drawer.

Capacity caps

Set a Daily limit under Capacity to protect your production, and choose what it counts. Orders (the default) counts each order once, whatever is in it. Items counts quantities, so an order of 12 cupcakes uses 12 of the day’s limit; a day stops being offered once it can’t fit the quantity the shopper is ordering (the quantity on the product page, or the items still needing a date in the cart). Items are counted from orders placed since 19 October 2026. When a day is full, it drops out of the picker automatically. Set it to 0 for no limit.

A limit for one product. Under Product rules, give a product a Max per day, for example 10 custom cakes, and that product stops being offered on a day once 10 are booked, while everything else carries on. It counts items of that product only, from orders placed since 19 October 2026, and works alongside the daily limit above. If a shopper asks for more than any day can take, the picker says so: “We can’t make that many for one day. Try a smaller quantity.” You can reword that under Wording and translations. The picker also counts what is already in the cart, so once the cart holds a day’s limit of that product, the date greys out for the next add. With the Readyby cart guard app embed on, the same check runs again at checkout on the whole cart.

If you use time slots, each slot can carry its own capacity. A slot that fills up is grayed out for that date while your other windows stay open, and if every slot on a date is full, the date itself stops being offered. A window that has already started is dropped the same way. Readyby offers only windows that begin at least your lead time from now, so if you need an hour’s notice, a shopper standing in front of the picker at 3pm is not offered your 8am window. Once the last window of the day has gone by, so does the day.

Upcoming orders and your prep list

Open Upcoming orders in the app menu. Every order with a Readyby date is listed under the day it is due, soonest first, with the time window and pickup or delivery beside it. Press Prep list to add a line under each day showing how many of each item those orders need, so you can see at a glance what to bake or pack; it stays on in that browser until you press it again. Fulfilled orders are greyed out and left out of the prep list. Anything past its date that is not fulfilled yet sits folded at the top under Past due, not fulfilled with a count; click the bar to open it. Coming up folds the same way, also with a count. Each section stays open or closed the way you left it, in that browser. Mark orders fulfilled in Shopify and they drop off. Click an order number to open it in Shopify. With two or more pickup locations, each order shows its location, and a location menu next to the search shows one store’s orders (and prep list) at a time. An order with items at two shops shows once, with one checkbox and a line for each shop; pick a shop in the menu to see only its part.

Use All, Pickup or Delivery (and Shipping, once you have a shipped order) at the start of the toolbar to show just one kind of order; the prep lists update to match. Print list gives you a clean copy for the kitchen (with the prep list if it is on), and Download CSV saves the same list as a spreadsheet, one row per item.

Search by order number or item, and sort by Soonest first (date, then time window), Latest first or Order number. Each list scrolls inside its box, so a busy week doesn't make the page endless. Tick orders, or Select all for every order shown, then press Print slips on receipt printer, which sends a kitchen slip for each to your connected printer (Starter, see Receipt printer). Print list uses your browser’s print box, so it works with any printer or Save as PDF; no receipt printer needed. Once orders are ticked, the Print list and Download CSV buttons at the top act on just those orders (the count under Select all says so); with nothing ticked they cover everything shown. Select all leaves out past due orders unless that section is open.

See your orders in your calendar

At the bottom of Upcoming orders, click Create calendar link. You get a private link that shows each dated order as an all-day entry on its day, with the order number, pickup or delivery, the time window and the items. In Google Calendar choose Other calendars, then From URL, and paste the link. Apple Calendar and Outlook both have a subscribe-by-URL option too. Calendar apps refresh the link on their own schedule, usually every few hours, so check Upcoming orders for up-to-the-minute numbers. No customer names or contact details are in the calendar. Anyone with the link can see it, so if it is ever shared by mistake, click Reset link: the old link stops working at once, and you add the new one to your calendar again. Turn off removes the link completely. Create, Reset link and Turn off show the result on the page straight away, but nothing changes until you click Save in the bar at the top, so Discard undoes a click. A new link can be copied once it is saved.

The page reads your orders each time you open it, going back as far as your booking window plus a week (between 45 and 60 days, the most Shopify allows, up to your newest 1,000 orders), and nothing from them is stored by Readyby.

Receipt printer

A Starter feature. Readyby can print a slip for every new order with a date on a Star receipt printer, by itself, with no computer or app open. Each slip says PICKUP, LOCAL DELIVERY or SHIPPING across the top to match the order, then shows the order number, ready date, the time window, the pickup location and the items with quantities. No customer details are printed. What a slip looks like on the Receipt printer page shows a sample pickup, local delivery and shipping slip.

Which printers work

Any Star Micronics printer that supports CloudPRNT and is on your network by cable or Wi-Fi. From Shopify's list of POS receipt printers, that is the Star TSP143IV (any version) and the Star mC-Print3. Star's mC-Print2 and some older Star models with a network card also work; Star keeps the full CloudPRNT list.

Not supported: the older Star TSP143III models, Star mPOP, Bluetooth-only printers and Epson printers. They can't fetch slips over the internet on their own. If you're buying a printer for this, check the model name says TSP143IV or mC-Print3.

Setting it up

Open Receipt printer in the app menu. Menus differ a little between printer models and firmware versions, so your printer's manual has the exact screens; these are the steps on most Star printers:

If the printer is off or out of paper, slips wait and print when it is back, so after a closed weekend it prints the backlog. Before you sell or return a printer, press Replace link or Turn off so it can no longer receive your slips. Keep the printer's firmware up to date with Star Quick Setup Utility.

Slips history

At the bottom of the Receipt printer page, Slips history lists every slip waiting to print, any that failed, and everything printed in the last 7 days, with the order number, ready date, location and items. If the printer reports a problem with a slip, or never confirms it printed, Readyby tries again; after 3 tries the slip is marked Failed and stops retrying so it can't hold up the slips behind it. Use All, Waiting, Failed or Printed to filter the list (each shows its count), sort by Newest first, Oldest first, Ready date (soonest due first, then time window) or Order number, or search by order number or item. The list scrolls inside its box and shows up to 200 slips at a time. Press Print on a slip to print it again, for example after a paper jam. To do several at once, tick slips (or Select all for every slip shown) and press Print selected or Delete selected. Delete asks you to confirm first, and deleted slips won't print. Printed and failed slips are deleted after 7 days.

If the printer isn't printing

What you seeWhat to do
There is no CloudPRNT setting on the printerUpdate its firmware with Star Quick Setup Utility and look again. If it still isn't there, that model doesn't support CloudPRNT; see Which printers work above.
Paper comes out blank, even on the printer's own settings sheetThe roll is in upside down, or it isn't thermal paper. Thermal paper only prints on one side: scratch it with a fingernail, and the side that marks must face up as it comes out. Use the paper width your printer takes (most are 80mm, 3-1/8"); some second-hand printers arrive with plain paper.
Readyby still says Not connected after you pasted the linkThe change was probably submitted but not saved. Save the settings and restart the printer (on many Star printers Save → Restart device, then Execute), then give it up to 5 minutes; a restarted printer can take that long to rejoin your network and check in. Also check the link was pasted whole, with nothing missing at either end.
Still Not connected after a save and restartThe printer needs its own internet access. Check, in order: CloudPRNT is turned on and shows your link starting https://print.dropfeed.io/; the settings sheet shows a real IP address; the printer isn't on a guest Wi-Fi network or behind a firewall that blocks it; the firmware is up to date. You do not need to connect Star Micronics Cloud, and leave any TLS or certificate setting on its default.
Connects, then drops againUsually your router's DNS. In the printer's network settings set the DNS servers to 1.1.1.1 and 1.0.0.1, save and restart. Some printers only show those fields when the IP address is set to fixed (static); if so, use the address from its settings sheet.
Connected, but the first test slip takes a whileAfter a restart the first slip can take up to half a minute while the printer settles in. After that, slips print within a few seconds.
A pile of slips printed at onceThe printer was off, offline or out of paper. Slips wait in line and print when it is back, oldest first. To skip them, tick them under Slips history on the Receipt printer page and press Delete selected.
A slip shows FailedThe printer reported a problem with it three times, or never confirmed it printed. Check the paper and that the cover is closed, then press Print on that slip under Slips history.
A slip came out jammed or unreadablePress Print on it under Slips history. Printed slips stay in the list for 7 days.
You're selling, returning or replacing the printerPress Turn off or Replace link in Readyby first so the old printer can't receive your slips, then reset the printer to factory settings (on many Star printers, Set Default on its settings page).

Still stuck? Email support@dropfeed.io with your printer's model and a photo of its settings sheet.

A printer at each location

With two or more pickup locations, the Receipt printer page has a card called A printer at each location (optional). Create a link for a location and paste it into the printer at that shop (the same steps as above). Slips for orders picked up at that location then print there, and a cart with pickups at two shops prints each shop’s slip at its own printer. Orders for other locations, delivery and shipping print on your main printer. Print a test slip on each location checks its printer. Removing a location’s printer sends its waiting slips to the main printer.

One printer for several Dropfeed apps

A Star printer holds one link. If you use more than one of our apps on the same printer (for example Readyby slips and Printby tickets), open the printer section in one app, choose Using this printer for another Dropfeed app too? and paste the other app’s printer link. You get one combined link: paste that into the printer as its CloudPRNT Server URL and restart it. Every app keeps printing to it and shows the printer as connected. If you replace a link in any of the apps later, make the combined link again. Epson printers keep one app each. Each app still prints its own slips, so if Readyby (or Rentby) and Printby both print new orders automatically, each order comes out twice: the app’s kitchen or pick slip and Printby’s order ticket. For one per order, turn off automatic printing in one of them; the combined-link box offers a button to stop the app you’re in from printing new orders.

Order tags and pickup locations

Two optional extras under Settings → Order tags and pickup locations. Both are off until you tick them. They use two permissions Readyby asks for: to add tags to your orders and to see your store locations. New installs approve them when installing; if you installed before 19 October 2026, Shopify asks you once to approve the update the next time you open Readyby. Approving changes nothing on your store by itself.

What lands on the order

When a shopper checks out, their choice is saved to the order as Ready by (the date), Requested (pickup or local delivery), Time (if you use slots), and Delivery postal code (for local delivery). Where they appear depends on which picker the shopper used.

A date chosen on a product page is attached to the item itself, so it appears in two places: on the line item, directly beneath the product, and under Additional details in the order's right-hand column. A date chosen on the cart page can only be saved at the cart level, because the cart page has no add-to-cart form to attach it to, so it appears under Additional details and nowhere else. If you have added the cart picker but not the product picker, every order will be the second kind.

Two pickup times on one order? Shopify also prints its own estimate in the order’s fulfillment box, such as “Pickup in store, tomorrow at 9:57 am”. That comes from your location’s Order ready for pickup setting, not from the customer. Always go by the Readyby Ready by date and Time, which are what the customer chose and what Upcoming orders, your slips and your tags use.

Requested, not Fulfillment: Shopify's checkout has its own pickup and shipping selector, and that choice is the one that actually happens. Readyby records what the shopper asked for, which is worth knowing even when the two disagree.

Printing on packing slips: Shopify's packing slip prints neither line item properties nor order attributes out of the box. That's a platform default, not a Readyby limitation, and it can be changed. Which route you take depends on where your date lands.

Preview your picker

The Settings page shows a preview of your date picker to the right of your settings (on a narrow screen, at the top). Your heading, pickup and delivery choices, the date and time dropdowns, the postal code box and every message update as you type, before you save. The dates listed are the ones your saved schedule offers, so save to see a schedule change there. If a product has its own lead time or ready days under Product rules, choose it from Preview as above the preview to see the dates that product’s page offers. The preview shows wording and layout, not your exact look: on your store the picker also takes your theme’s fonts and form styles and the look you set on each block in the theme editor, and wording typed into a block’s own settings replaces the app’s wording on that page.

Customize the look

By default the picker matches your store theme: it inherits your theme's fonts, text color, and background automatically, so it looks right the moment you add it. The quickest way to change it is in the app: Settings → Storefront text has the picker style (dropdown, month calendar, or a calendar that opens on click) and Use my own colors for the accent, text, background, border and calendar days, with a preview. For anything else, open the Readyby date picker block in your theme editor; settings are grouped into Text, Colors, Layout, and Advanced. Leave any color blank to keep the theme default. A color set on the block wins over the one set in the app.

Plans & usage

Time slots are on the free plan, not held back. Setup, settings, product rules and blackout dates are never metered. Every plan meters one thing only: the number of orders that carry a date, per calendar month. An order with no date on it never counts, whatever plan you are on. The home screen shows a usage count so you always know where you stand, and the monthly count resets on the 1st, in your store’s own time zone. Billing runs through Shopify and you can cancel anytime.

Email updates (optional)

At the bottom of Readyby’s home screen there is an Email updates box. It is optional: add an email and click Save in the bar at the top to receive updates, or leave it empty and Readyby never emails you. Once saved, the address is locked; to change it, click Unsubscribe and add the new one. Replies to our emails reach support@dropfeed.io. Emails greet you by your store’s name.

If you add one, you get a note when your store has used 80% of its plan’s monthly dated orders, another if it reaches the limit and the picker steps aside until the 1st, and, at most once a month, a short note listing any major updates (none in a month with nothing major). Every email has an unsubscribe link, and Unsubscribe under the box removes your address straight away.

Frequently asked questions

Shopify asked me to approve new permissions. What happens if I press Cancel?

Nothing on your store changes. Your date picker, the date on orders and your bookings keep working as before. Shopify will show the same request each time you open Readyby, and you can approve it whenever you like; Settings stays unavailable until you do. Approving doesn’t switch anything on by itself: order tags and pickup locations only start when you tick them in Settings. The two new permissions are to add Readyby’s own tags to orders and to see your store locations, and the privacy policy explains exactly how each is used.

Does this change my checkout?

No. Readyby adds the picker to your product page and writes the choice onto the order. It doesn't replace or slow down Shopify checkout.

What if different products need different notice?

Set a lead time per product under Product rules. With the product page picker, each item keeps its own date, so a cake needing 3 days and a pastry needing 1 can be bought together. After each add to cart the picker empties, so every item gets a date chosen for it, and an item removed and added back is asked again. If you use the cart picker instead, one date covers the whole cart and Readyby uses the longest lead time in it.

You can place both pickers. The cart picker hides itself when every item in the cart already has a date from the product page, and appears when something arrived without one, such as by quick add or Buy it now.

Can I stop taking orders for a specific day?

Yes, add it under Blackout dates (for a one-off closure) or lower that day's capacity. Closed days disappear from the picker.

How do I close for a whole week?

Add one blackout entry with a first day closed and a last day closed. The entire stretch is blocked as a single row you can edit or remove in one click. You don't add a row per day. Ranges can cross month and year boundaries.

Do I have to add Christmas again every year?

No. Tick Every year when you add it and that date, or range, is blocked every year from then on. It works across New Year too, for example Dec 24 to Jan 2. Holidays that move, such as Thanksgiving or Easter, fall on a different date each year, so add those as normal one-time entries.

Can I change a closed date after adding it?

Yes, click Edit on the entry to change either date, the reason, or whether it repeats every year, without deleting and re-adding it.

Can a shopper get past a required date?

No. When “Require a date before add-to-cart” is on, Readyby blocks Add to cart and the “Buy it now” / Shop Pay button. Add the cart-page block as well and the same requirement applies at checkout for anyone who skipped the product page.

Do customers see times in their own time zone?

No, everything uses the store time zone you set, so your cutoffs and dates always mean what you intend.

What counts toward the Free monthly limit?

Only completed scheduled orders (up to 25/month on Free). Changing settings or rules never counts.

Done-for-you setup

Rather not set it up yourself? Open Done-for-you setup in the app menu. For $149 one time, charged on your Shopify bill, we set your schedule, lead times per product, pickup and delivery options and daily limits, place the date picker on your product and cart pages, and email you a summary of what we set. You approve a collaborator request from Dropfeed under Settings, Users, and you can remove our access any time. We never place orders on your store, and if we can’t get it working, we refund you.

Need more help?

Email support@dropfeed.io. We typically reply within 1–2 business days.

← Back to Dropfeed