Documentation

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

  1. Download Dock Tempo Pro (dockflow-pro.zip) and, on Operations or Enterprise, Dock Tempo Unloader (dockflow-unloader.zip) from My Account → Downloads.
  2. 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).
  3. 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

Please login to access the carrier portal.

Logged-in bookers Booking form, My Bookings, self-cancel within your cut-off

🟢 Available
🟡 Scheduled
🔴 In Use
⚫ Inactive
Dock Name Status Current Booking Company Container # Time Slot Slot End Started Time So Far On Break Slot Progress Time Left
🟢 Dock 1 Dock 1 Available — — — — — — — — — —
🟢 Dock 2 Dock 2 Available — — — — — — — — — —
🟢 Dock 3 Dock 3 Available — — — — — — — — — —
🟢 Dock 4 Dock 4 Available — — — — — — — — — —
🟢 Dock 5 Dock 5 Available — — — — — — — — — —
🟢 Dock 6 Dock 6 Available — — — — — — — — — —
🟢 Dock 7 Dock 7 Available — — — — — — — — — —
🟢 Dock 8 Dock 8 Available — — — — — — — — — —
🟢 Dock 9 Dock 9 Available — — — — — — — — — —
🟢 Dock 10 Dock 10 Available — — — — — — — — — —
Anyone (public) Live dock wallboard, refreshes every 15 s
Please log in with an account that has access to view bookings.
Managers Read-only All Bookings report with filters

🚛 Unloader Dashboard

🔎 Find a Booking

If you get disconnected at any point, just search again with the same Booking ID, Container Number, or Dock Number to pick up where you left off.

Anyone (public) The Unloader crew app (Operations+)

Please login to access your dashboard.

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.

Scroll to Top