Dispatch and route planning
Admin → Orders → Deliveries / Delivery tours
Refund or void a Verifone online payment
The Admin order payment section supports total or partial matched refunds and total VOID for an eligible single Verifone online payment, for owners/managers with payments.manage. Provider state, captured amount and verified history govern eligibility, not a fixed 24-hour rule. This does not cancel preparation or fulfillment and does not add a POS terminal refund button. Unknown results stay reserved and must be checked, never resubmitted. Invoice4U credit/cancellation documents require a separate check. See the online payment procedure.
A captured ABS sale still AUTHORISED/AUTHORIZED or SETTLEMENT_REQUESTED is not settled: Admin shows Available to void and only Void entire payment, with no prior refund. Refund payment and Available to refund require an explicit settled state or verified partially-refunded history. Generic APPROVED/COMPLETED, contradictory states or missing evidence offer neither action. A state change before confirmation rejects the stale action; it never switches VOID to REFUND automatically. Request rejected by Verifone means no return of funds is confirmed, not necessarily an issuer decline.
Review the by-weight authorization ceiling
For online by-weight orders, open Settings → Payments & VAT with settings.edit. Set Weight hold buffer % from 0 to 100 and save; the default for new restaurants is 20. A failed save keeps the draft. Zero still authorizes the estimate. Only the weight-priced subtotal gets a margin: 100 weighted + 50 fixed at 20% authorizes 170; delivery has no extra margin. Checkout shows the estimate, temporary ceiling and Confirm and authorize, in the restaurant theme. A changed ceiling requires customer review and another confirmation before payment; unknown policy blocks authorization. Existing reviewed checkouts and holds keep their ceiling. Staff confirm measured weights before capture and progression; excess beyond the hold is flagged for a separate payment, never automatically charged. Cash/pay-later makes no hold promise. Requires a configured authorize/capture provider, with partial capture, release and expiry validated before production. This neither changes the catering deposit/balance policy nor enables new-card saving with a CST weighted hold.
Select deliveries for one date
Choose the route date and review available delivery orders. Do not combine scheduled deliveries from another service date into the route. Orders retain the calendar verified for their address: postal groups with the same fee and identical options can combine weekdays without changing saved zones or opening another day. A new address can reduce those days even when one zone remains shared; choose a still-eligible window. This eligibility precedes route planning and does not change stop order. See postal weekday groups.
Assign couriers and stops
Select the intended courier, depot and orders, then review stop addresses, service times and promised windows. Correct an address before optimization.
Review a calculated route
Calculate the route or fleet allocation, then review the route before departure. By default, saved order slots do not constrain stop order: they may have been assigned automatically. Enable Respect order time windows only when those times have been agreed with customers. When enabled, couriers can receive different stop counts and planning can serve the earliest deadline first; each complete route must satisfy the enabled windows. Distinguish driving, waiting and handover. A rejected plan can concern departure, enabled windows or road access. Review these settings before retrying; recalculations and unsuccessful attempts can consume provider usage.
Choose the route time constraints
In Orders → Deliveries, open allocation or Edit on a draft route. Respect order time windows is off by default: the route optimizes stop order, then calculates arrivals and the customer communication range. Enable it only for saved times actually agreed with customers. The choice is saved per route; changing it and saving recalculates stop order even if it was manual. Existing routes keep their sequence until an explicit recalculation: use Recalculate to correct an existing route. Delivery dates remain enforced and saved order slots are not erased. Review the new estimates and reopen reminder previews before sending. An already sent message is not sent again automatically. For new same-day orders, the receiving estimate now follows the matched zone’s saved same-day days, time mode and transport allowance, within restaurant availability and product readiness. An address in an advance-only zone cannot request delivery today. Review the frozen order estimate and confirm a valid time after checking the courier. Editing zone rules does not recalculate an existing order promise or dispatch a WhatsApp message.
Save and track progress
Save the checked route, then dispatch it. Follow the courier and orders and explicitly update an obsolete plan with the required management access. Courier mode provides a map, timeline and route selector. The fixed dock offers Start, then navigation and delivery confirmation. Courier mode cannot change settings, reoptimize, correct an address or change stop order or route composition. Dispatchers make these changes in Orders → Deliveries. Selecting a pin or searching for a stop does not change the saved order.
In the courier view, the order amount is shown only for cash payments. Card payments, other payment methods and orders with an unknown payment method do not show an amount.
In the courier workspace, fixed Navigate and Mark delivered buttons target the stop selected in the list or on the map; its number and address appear above. An old page cannot confirm delivery from a cancelled or inactive route, or after the order was reassigned to another courier. After rejection, refresh the routes and select the current assignment.
Set each courier’s departure and final address
Before departure, edit the route in Orders → Deliveries, or define each courier’s endpoints during allocation. Type at least three characters in Departure address or Final destination and select a suggestion. A city alone, such as Raanana, uses its center; choose a complete address for a precise point. The selected label is retained without adding the city again. Street-only suggestions still require a house number for a precise address. If suggestions are unavailable, type a city or full address manually. Save, then review the recalculated final leg and arrival times. Changing an endpoint resets manual stop order; saved order windows apply only when Respect order time windows is enabled. A city endpoint does not replace precise customer addresses. An unresolved street is never substituted with the city center. If an address cannot be found, select a city suggestion or correct the street, number and city. Failed lookups preserve the saved route. With Google active in Maps and routes, endpoints can use a Google match even when Geoapify cannot locate them. If Google is unavailable or its protected quota is reached and the other provider cannot locate the endpoint, saving or recalculation is blocked and the previous plan is retained. The final destination is never silently omitted. Google-only points appear on the Google map and are hidden when the map switches provider. Select a located alternative or retry when Google is available.
Set the customer delivery range
In allocation, use Customer delivery window beside Time at each stop. New plans propose 90 minutes. Enter 1:30, 1h30 or 90 for an hour and a half; the allowed range is 1–720 minutes. The range begins at the calculated arrival, rounded down to its displayed minute: 08:30 plus 90 minutes gives 08:30–10:00. It does not extend the handover time or change the order’s original scheduling constraints. The setting is saved per route and can be edited before departure. Delivery WhatsApp links and manual/approved reminders use this range. Reopen a reminder after recalculation to review its updated text. Historic routes without this setting retain their saved reminder slot. If a configured route cannot provide a valid arrival, recalculate or correct its address before sending; no guessed range is substituted. This range is calculated after optimization and never becomes a constraint on a later recalculation. Only Respect order time windows enables the slots already saved on orders as arrival constraints. Planning changes are reserved for authorized dispatchers in Deliveries; they are unavailable to courier accounts and in an owner’s or superadmin’s courier workspace.
Attach a file to a WhatsApp reminder
With direct Meta notifications enabled, configure the attachment in Settings → Communications → WhatsApp or on the Order workflow stage: an approved photo/PDF header template, an authorized fixed file or that order’s PDF receipt. This selection changes neither the route nor the configured sending time. Review the file in the manual preview and the attachment filename in Customer messages; a filename does not prove delivery.
Make a one-order combo exception
For a one-order combo exception, an authorized Admin user opens the combo step and selects Choose another item. The replacement is included without a surcharge and is saved on that order only. Fulfillment, scheduling and delivery rules remain unchanged. Review the selected dish and portion in the order details. Guest and POS combo pickers retain the configured composition; arrange an exception through the internal Admin order editor. See the combo guide for quantities, eligibility and recovery.
Keep stock provenance when moving fulfillment
Predefined item stocks now have a journal under Items & menus → Stock history and on each product. A rotating carte can prepare initial allowances per series and publish them without restoring already committed units. Previous remaining counts are not carried forward. Order changes and pre-production releases use the original frozen pool; a produced item remains consumed. Ingredient/preparation quantities and recipe costs remain separate. See Availability for initial imports, corrections and history filters.
Distinguish a service limit from an unlocated address
If a route reports an exhausted quota or an unavailable mapping service, open Settings → Usage and quotas with settings view or edit permission. Google routes, geocoding and tiles have separate counters: the map can still display while road calculation is blocked. Road displays and recalculations also consume allowance; the counter is not simply the number of routes created. Previously known Google positions remain visible on the Google map while their cache is valid. A position that cannot be checked is marked temporarily unavailable; this does not prove the address is wrong. Foody hides unavailable paths and arrival estimates. A new assignment requiring these positions is rejected before changing orders if a complete calculation is impossible. Fallback is available only when every included point is independently located without Google. Do not unassign deliveries to resolve a quota: contact Foody to review the limit or wait for the displayed renewal, then refresh and recalculate if needed. Review arrivals and reminder previews before sending. A quota does not delete orders or their addresses.
Access the new controls
Settings → Usage and quotas displays this restaurant’s Google/Geoapify allowances and usage with settings view/edit permission. Fallback credits and deliveries submitted for optimization are distinct from request counts. Foody adjusts limits without resetting counters. See limits and renewal. Customer sign-in invitations are configured separately in Website → Order journey → Show the sign-in invitation on arrival; off retains a discreet Sign in link. This does not change courier assignment or delivery rules.
Preview and send the selected date’s reminders
In Orders → Deliveries, select a date and open WhatsApp reminders to review pending customers across all displayed routes. WhatsApp customer opens only that customer’s reminder. The read-only preview uses the approved reminder template, saved recipient, assigned courier and calculated route arrival window. It can be reviewed early; manual sending remains blocked until the day before delivery in the restaurant’s timezone. Use Send this reminder for one customer, or Send reminders and confirm the number of separate messages for the entire date. No WhatsApp group is created. Previously submitted, in-progress, uncertain and unavailable reminders are excluded. Check blocked customers; a preparation failure does not prevent other eligible customers. A changed route or message stops remaining sends: refresh, review and confirm again. A lost send response remains uncertain and is never retried automatically. Acceptance does not prove delivery; check Customer messages on the order. The current preview does not reconstruct an earlier message body. For automatic sending, open Order workflow and configure the reminder template and Day before timing on the intended stage, for example Ready. Opening previews enables no automation. Automatic, grouped and individual modes share protection against a second reminder for the same order, including after template or provider changes.
Use the courier’s saved final destination
Staff → employee → Edit contact details stores the courier’s default final destination, with an option to use the current home address. The planning drawer pre-fills it for a new route, and the API also applies it if a client omits an override. An explicit route destination, including an explicitly empty field, takes precedence. Editing the departure address retains the proposed final destination. Existing routes with deliveries retain their saved settings when a profile changes; empty courier placeholders use the latest default when first planned. Route endpoint validation and recalculation rules still apply. No staff profile edit starts or recalculates an existing route.
POS code at staff activation
Staff activation checks the permissions assigned in this restaurant, including custom roles: orders.manage or payments.manage requires a private POS code. Read-only couriers and kitchen-only roles do not need one. Existing unused invitation links apply the same current rule. Changing a role label, courier address or route destination does not grant POS permissions. See activation and recovery.
Prepare a business-owned Google account
In FoodyAdmin’s Help and support panel, open Google account and API keys guide or choose “How do I prepare my Google account and API keys for Foody?”. The step-by-step Google guide covers accounts, projects, billing, APIs, restrictions and secure handoff to Foody. The same translations feed search and assistant sources. Never paste a key or secret file into the conversation. The assistant explains preparation; it does not collect credentials or activate individual onboarding.
Undo an accidental departure
With order-management permission, open Orders → Deliveries, select the route date and choose Undo departure. This action is offered only for an active route whose stops are all pending. Confirm: the route returns to a draft and Out for delivery orders return to In preparation. Orders already corrected to Accepted, In preparation or Ready for delivery keep their status. The courier remains assigned; then use Unassign and allocate the orders to the correct courier. The date, addresses, stop order and payments are preserved. This undo sends no customer message or kitchen ticket; previously sent messages and their history are retained. If an arrival, delivery or skipped stop has been recorded, or the route changed meanwhile, undo is rejected: refresh and review progress before another correction. Do not mark orders delivered to unlock an assignment. Planning changes are reserved for authorized dispatchers in Deliveries; they are unavailable to courier accounts and in an owner’s or superadmin’s courier workspace.
View another courier’s workspace
With compatible API and Admin versions, the restaurant owner can also use this selector, like a superadmin. Open Orders → Courier mode and select a restaurant courier under View as courier. The map and routes belong to that courier; actions record real changes and the signed-in account’s GPS is not shared for them. See the courier-mode procedure, including switching couriers and recovering from errors. Planning changes are reserved for authorized dispatchers in Deliveries; they are unavailable to courier accounts and in an owner’s or superadmin’s courier workspace. For optional same-day orders, inspect the frozen arrival estimate in Order details, check the courier’s availability and confirm a valid delivery range. The estimate does not reserve courier capacity. Route optimization, courier assignments and day-before WhatsApp reminders keep their existing workflows; enabling same-day rules does not create a new reminder trigger.
Read the last received position
For an En route run, check the location notice under the courier: no position received, position received at the displayed time, or old position after more than one minute. The Courier position marker moves with new received positions; the green triangle is the planned departure. An active route does not guarantee that the phone is sending GPS. Check that Foody is visible, location access is allowed and the courier’s phone is connected. Opening Courier mode on the manager’s phone does not share the courier’s GPS. See courier tracking and recovery.
The courier is represented by a round avatar above delivery pins, with an always-visible label. An old position retains its avatar and the Old courier position label. Initial framing includes the last received position; in Courier mode, Fit the whole route brings it back into view with the stops. GPS updates move the avatar without automatically recentering the map.
Review independent confirmations
A partial handoff preserves remaining units. Completing one required KDS station does not complete all preparation. Courier handoff and customer receipt are separate confirmations; a route departure does not prove a customer receipt time. See preparation and handoff.
Test when an order is placed
In Orders & availability → Simulate an order, select Order date and time in the displayed timezone, then the receiving date and basket. Now reloads the server time. Preparation and same-day rules are evaluated at this reference using current saved settings and ready stock. A past date does not reconstruct history; this test neither reserves a courier nor creates an order. Customer orders retain the real server clock. See the simulation procedure. The simulation covers classic delivery; published tours retain their own rules.