Set up Dock Tempo
From install to your first auto-confirmed booking. Questions? Ask support.
On this page: Install · Licence · Docks & QR codes · Pages & shortcodes · Bookings · Autopilot · Unloader · Emails & SMS · REST API · AI (MCP) · Updates
1. Install
- Download Dock Tempo Pro (
dockflow-pro.zip) and, on Operations or Enterprise, Dock Tempo Unloader (dockflow-unloader.zip) from My Account → Downloads. - In WordPress go to Plugins → Add New → Upload Plugin, upload Dock Tempo Pro and activate it, then do the same for the Unloader (it needs Pro).
- A Dock Tempo menu appears in wp-admin. Ten docks are created to start with; edit them under Settings → Yard Management.
Requirements: WordPress 6.0+, PHP 7.4+ (8.1+ recommended), pretty permalinks, and working outgoing email (an SMTP plugin such as FluentSMTP is strongly recommended). WP-Cron must run: on busy sites, use a real server cron calling wp-cron.php every 5 minutes.
2. Activate your licence
Go to Dock Tempo → Licence, paste the key from My Account → API Keys and click Activate. The key sets your plan automatically. For roll-outs, add it to wp-config.php and the site activates itself:
define('DOCKTEMPO_LICENSE_KEY', 'your-key');
Without a licence, every feature is unlocked for 14 days. After that, bookings, the calendar and Live View keep working for 2 docks, and nothing is deleted.
3. Docks & QR codes
Dock Tempo → Settings → Yard Management: add, rename, deactivate docks; set type (inbound/outbound/both), equipment and slot duration. Each dock has a unique QR code: Download QR, print it and stick it on the dock door. Scanning it opens that dock’s bookings for today, with a button straight into the crew form for each one.
Keep the QR on the door only. Resuming an unload after a break needs a fresh scan at that dock, which proves the crew are physically there.
4. Dashboards, pages & shortcodes
Dock Tempo creates its dashboards for you when it’s activated, each on its own address. Dock Tempo → Dashboards lists them with copy buttons:
| Dashboard | Address | Who uses it |
|---|---|---|
| Manager dashboard | /dashboard/ |
Managers: today, Needs a human, docks & QR codes, activity |
| Booker portal | /booker/ |
Carriers and bookers (log in): book a slot, my bookings |
| Unloader | /unloader/ |
Dock crew, no login; the dock QR codes open it |
| Live View | /live-view/ |
Office TV and dock screens |
They open as full-screen apps, separate from your theme. Rename or move them under Pages like any page. To put a screen on one of your own pages instead, use the shortcodes:
| Shortcode | Who sees it | What it does | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Logged-in bookers | Booking form, My Bookings, self-cancel within your cut-off | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anyone (public) | Live dock wallboard, refreshes every 15 s | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Managers | Read-only All Bookings report with filters | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Anyone (public) | The Unloader crew app (Operations+) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Logged-in users | Simple “today’s schedule” card list |
After creating the crew page, set it as Crew Form Page under Dock Tempo → Unloader Crew Form so dock QR codes can jump straight into a booking.
Give carriers the Container Booker (or Carrier) role. Their company name and phone on their user profile are used to fill in bookings.
5. How bookings work
- A booker picks a date and time; the first free dock is assigned automatically. If every dock is taken they’re shown the next three free times.
- New portal and API bookings are pending until Autopilot or a person confirms them. Admin-created bookings are confirmed straight away.
- Bookers can cancel pending or confirmed bookings up to the cut-off (Settings, 72 hours by default).
- Statuses: pending → confirmed → checked in → in progress → complete; or delayed / cancelled.
6. Autopilot
Dock Tempo → Autopilot (Operations and Enterprise). Turn it on and set:
- Auto-confirm: confirm bookings that pass every rule; hold the rest in Needs a human.
- Opening hours and closed days: also the times offered as “next free slots”.
- Notice: minimum hours ahead (default 2) and maximum days ahead (default 60).
- Carriers: hold carriers scoring below a threshold (after 3+ bookings), optionally hold a new carrier’s first booking.
- Daily limit per company and required fields (PO number).
- Booker emails: “booking received” (when not confirmed instantly) and a reminder N hours before.
- No-shows: mark delayed when nobody has checked in N minutes after the slot, and ask the booker to advise.
- Daily digest: time and recipients.
- AI review (Enterprise): ask the AI about held bookings; optionally let it confirm or decline on its own. Uses your OpenAI API key.
Autopilot runs every 5 minutes and immediately after each new booking. The Activity table shows every decision, who or what made it, and why.
7. Unloader crew app
- Dock Tempo → Unloader Form Builder: build the Pre-Check, Start and Finish forms by drag and drop.
- Dock Tempo → Unloader Crew Form: crew page, pickup-ready emails (booker and internal list, each with its own fields), OpenAI key and model for photo checks, Twilio for SMS, report frequency, stale-job timeout, font and text size, and chargeable-wait sign-off.
- Container Notifiers (e.g. Damaged, Dirty) are set in Dock Tempo → Settings.
7b. Pricing & charges (admin only)
Dock Tempo → 💲 Pricing. Bookers never see prices.
- Rate cards: price per container by size (rows, from Settings → Container Sizes) and contents (columns, from Unload Types), plus optional per pallet, per carton, SKUs over an included number, a surcharge per sorting type (flat and/or per carton), chargeable wait per hour after free minutes, and a minimum charge.
- Customers: everyone starts on the Default card. Give a customer their own card on the Customers tab (by booker login or company name) or on their user profile.
- Bookings carry an itemised charge: shown in All Bookings, on the manager dashboard schedule and in Charges (date range, customer filter, totals, CSV export). A completed booking’s charge is locked, so later price changes don’t rewrite it.
- Bookings ask for How many SKUs? and Sorting required. Edit the sorting list under Settings → Sorting Types (default: No sort, Sort by style, Sort by SKU, Sort by PO, Sort by size / colour, Sort by store / destination).
8. Emails & SMS
From name and address: Settings. Booking Confirmed email: choose the fields and extra recipients. All mail goes through WordPress, so configure an SMTP plugin for reliable delivery. SMS alerts use your own Twilio SID, token and number.
9. REST API
Dock Tempo → API & AI (Operations and Enterprise): create a key (read only, or read & write). The full key is shown once. Send it as Authorization: Bearer dtk_.... Base URL: https://your-site/wp-json/docktempo/v1/
| Endpoint | Does |
|---|---|
GET docks |
Docks, what’s on each now, bookings today |
GET bookings |
from, to, status, dock, company, search, limit |
GET bookings/{booking_id} |
One booking |
POST bookings |
Create: date, time, company_name, contact_email, container_number + optional fields. Returns 409 with next_free when full. |
POST bookings/{id}/status |
status (confirmed, cancelled, delayed, checked_in, in_progress, complete), reason |
POST bookings/{id}/reschedule |
date, time; a free dock is assigned |
GET availability |
Next free slots: date, time, count |
GET summary |
Day totals: date |
GET exceptions |
The “Needs a human” list |
GET activity |
Decision log: limit |
GET carriers |
Carrier scores |
Limit: 240 requests a minute per key. Writes go through the same rules and emails as the admin screens.
10. AI connection (MCP)
Enterprise. Under API & AI, tick MCP server on and create a key. The endpoint is https://your-site/wp-json/docktempo/v1/mcp (Streamable HTTP, JSON-RPC).
claude mcp add --transport http docktempo https://your-site/wp-json/docktempo/v1/mcp --header "Authorization: Bearer dtk_..."
For Claude Desktop, Cursor or VS Code, use the mcp.json snippet shown on the API & AI page. Tools: yard_overview, list_bookings, get_booking, list_exceptions, find_free_slots, list_docks, carrier_scores, recent_activity, and with a read & write key create_booking, confirm_booking, cancel_booking, reschedule_booking, update_status.
11. Updates
While your plan is active, new versions of both plugins appear on Dashboard → Updates like any other plugin. When your year ends, everything keeps working; renew to get updates and support again.
