User guide — Royco Ports Services Ltd
How to book a truck visit, get your driver's QR pass, and manage your bookings. RTOS is the Royco Terminal Operating System at Queen Salote International Wharf, Nuku'alofa.
The RTOS Gate Appointment is the online booking system for truck visits to the terminal. A haulier books a time slot, picks the truck and driver, lists the units (containers, vehicles) the truck will move, and receives a QR gate pass. The driver shows that QR code at the gate on the way in and again on the way out — no paper, no phone calls, no queue-jumping.
One visit = one appointment = one QR code, no matter how many units the truck is carrying (up to the maximum, 4 by default).
| Identifier | Format | Example |
|---|---|---|
| Appointment number | GAPP.YY.MM.DD.##### | GAPP.26.08.04.00042 |
| Slot (internal) | SLOT-YYYY-MM-DD-HHMM | SLOT-2026-08-04-1400 |
| QR pass link | /gate-pass/{token} — random 16-character token | /gate-pass/8f3a9c2d1b7e4051 |
| Role | What they do | Where they work |
|---|---|---|
| RTOS Truck Operator | Haulier's own staff — book, view, cancel appointments | Portal: /gate-appointments (their home page after login) |
| RTOS Gate Booking Agent | Desk users who book on a haulier's behalf, same company scope | Desk + portal |
| RTOS Truck Driver | Driver app users (self-booking + QR wallet) — staged, not yet live | /driver-pass (staged) |
| RTOS Gate User | Gate officers who scan passes in/out | Gate lane: /gate-lane |
| RTOS Operation Manager | Plans slots, admits out-of-window trucks, force-resolves visits | Desk + gate lane |
| System Manager | Full administration | Desk |
Haulier users only ever see their own company's trucks, drivers, and appointments — the system scopes everything by the company linked to your login.
You cannot book until your trucks and drivers are on file — registration is not self-service:
Open /gate-appointments. The page is titled Book a Gate Appointment and has two tabs: New booking (create an appointment) and My appointments (every booking you've made).
Top-right links: How to use this opens the in-app guide, and Registration form downloads the haulier registration form. A summary strip shows your current selection: Slot, Truck, Units.
In the Choose a slot panel, pick a date (slots are generated roughly two weeks ahead), then tap an open time tile. Each tile shows the window start time (e.g. 14:00) and how much room is left — e.g. 27/40 left.
A tile can be greyed out for one of three reasons:
If no tiles appear: "No slots open on this date." — pick another day.
In the Truck and driver panel:
The driver is optional at booking time (they can be confirmed at the gate), but picking them now means the pass shows the driver's name.
In the Units panel (you must have chosen a truck and a driver first — otherwise the panel shows "Choose a truck and a driver above first."):
MSCU1234567) or Chassis number (e.g. 1HGCM82633A004352). Type the number.E-2 · Drop Off), what the truck is expected to carry In and Out, and the yard slot if one is assigned. Press Remove to take a unit back off.Once a slot, truck, and at least one unit are set, the Create appointment button at the bottom becomes active (the bar shows the summary, e.g. 2026-08-04 · 14:00–15:00 · 2 unit(s)). Tap it. The system reserves your place in the slot (capacity is locked — a slot can never be oversold), validates every unit again, and issues the QR pass. If anything fails you will see a clear message and the slot is not taken.
You see Appointment confirmed: the appointment number (e.g. GAPP.26.08.04.00042), an Open the pass button, Book another, and Send the pass to the driver — WhatsApp or Email share buttons.
The pass lives at /gate-pass/{token} and is meant for the driver's phone — send it with the WhatsApp or Email button, or have the driver open the link you were given. It shows the appointment number, slot, truck, driver, and a Your moves list — every unit on the visit with its direction and yard slot.
Switch to the My appointments tab to see every booking you've made. Each row shows the appointment number, slot date and window, license plate, driver name, the status badge, the unit chips (e.g. E-2 MSCU1234567), a contextual line (Booked…, or the gate in/out and turnaround once the truck has visited, or the reason if cancelled), and View pass / Cancel where applicable.
The list pages through your history — use Load More to see older bookings.
Cancellation frees the slot's place for someone else to book, releases every unit for rebooking, kills the QR pass — and cannot be undone. Once a truck has actually gated in, you cannot cancel — contact the gate directly if something has gone wrong.
| Status | What it means |
|---|---|
| Draft | Saved but not confirmed (rare — the booking page normally goes straight to Confirmed) |
| Confirmed | Booked. You're good to arrive in your slot window. |
| Partially Failed | Something on this visit needs attention — contact the gate. |
| In Progress | Your truck is inside the terminal right now. |
| Completed | The visit is done. |
| Aborted | Reached the gate, but the move could not happen. |
| Cancelled | Called off before the truck arrived. |
| No Show | The slot passed with no truck arriving. |
These rules are enforced by the system — you will see a clear message if a rule blocks you (see Appendix B for the exact wording).
The container has to already be paid and released before it can be booked for pickup, or already have an active export booking for a drop-off. Check its status with your shipping agent, or try again once payment clears.
Trucks and drivers are added by RTOS staff, not self-service. Download the Registration form (link at the top of the booking page) and submit it to get your fleet and drivers on file.
Only Confirmed, Partially Failed, or Draft bookings can be cancelled. Once a truck has actually gated in, the visit has to run its course — contact the gate directly if something has gone wrong.
Yes — add as many units as your truck is actually carrying that trip under Units before you create the appointment. Each one is checked separately when you tap Check and add.
Open My appointments, find the booking, and tap View pass again — it's the same link, available any time before the visit is Completed, Aborted, Cancelled, or No Show.
No — one visit, one pass, one QR, even when the visit mixes drop-offs and pick-ups.
Up to the late-grace window (default 60 minutes) the gate can still admit you. Beyond that, only an authorised supervisor can override — with a recorded reason.
| Code | Move | What the truck does | Lookup field |
|---|---|---|---|
| I-1 | Import Pickup (Full Container) | Arrives empty, leaves with a full import container | Container number |
| I-2 | Import Pickup (Empty Container) | Arrives empty, leaves with an empty import container | Container number |
| I-3 | Import Pickup (Break Bulk) | Not bookable — walk-in Break Bulk Pickup at the gate | Mark |
| I-4 | Import Pickup (Vehicle) | Arrives empty, leaves with a vehicle | Chassis number |
| E-1 | Export Drop Off (Empty Container) | Arrives with an empty container, leaves empty | Container number |
| E-2 | Export Drop Off (Full Container) | Arrives with a full container, leaves empty | Container number |
| E-3 | Export Drop Off (Break Bulk) | Not bookable — walk-in Break Bulk Pickup at the gate | Mark |
| E-4 | Export Drop Off (Vehicle) | Arrives with a vehicle, leaves empty | Chassis number |
You never choose "pickup" or "drop off" separately — the move code implies it. The gate reads one line off the appointment, e.g. "Arriving empty. Collecting MSCU1234567 from slot A12." or "Arriving with full MSCU1234567 to drop off for export."
| Message | What it means | What to do |
|---|---|---|
| "Appointments close {0} minutes before the slot starts." (60 by default) | Inside the booking cutoff | Choose a later slot |
| "That slot is full. Please choose another." | Slot filled between page load and booking | Reload, pick another slot |
| "That slot is closed." | Terminal closed the window | Pick another slot |
| "That truck is not registered." / "Truck … is not active." / "Truck … registration has expired." / "Truck … does not belong to your company." | Truck not usable by your login | Register/renew the truck (Registration form), use another truck |
| "That driver is not registered or is not available." / "Driver … does not belong to your company." | Driver unusable | Pick a registered, available driver of your company |
| "Your account isn't linked to a company yet - contact your terminal admin." | Login has no company scope | Contact the terminal office |
| "MSCU1234567 is not eligible under any workflow yet - check it is paid and released." | Unit fails every move's eligibility | Wait for payment/release or export booking; check with your shipping agent |
| "MSCU1234567 matches more than one workflow - ask a supervisor to check its records." | Ambiguous unit | Contact the terminal |
| "Container MSCU1234567 is already booked on GAPP…" | Unit is on an active appointment | Find the appointment in My appointments; cancel it if it is yours and wrong |
| "MSCU1234567 is already on this appointment." | Duplicate add on the same booking | Nothing — already added |
| "Add at least one container." / "An appointment may contain at most 4 units." | Units out of bounds | Add 1–4 units |
| "Break Bulk cargo is collected through the walk-in Break Bulk Pickup flow at the gate, not by booking an appointment." | Break bulk selected | Book nothing for break bulk — go to the gate walk-in flow |
| "You may not cancel another haulier's appointment." / "You may only cancel your own booking." | Wrong owner | Only your own bookings are cancellable |
| "An appointment that is In Progress cannot be cancelled." | Truck already inside | Let the visit run; contact the gate if needed |
| "Choose a reason for the cancellation." | Cancel dialog reason missing | Pick a reason, then confirm |
| Pass shows "This visit is finished. Book again for your next move." / "This appointment was cancelled." / "This slot was missed. Please book another." | Pass is dead | Book a new appointment |