Operator path
Publish inventory, approve partners, decide bookings
Agent path
Contract, browse net rates, book, receive PDFs
Publish tours in your timezone
Create tours with city, policies, age bands, and content locale. Gemini fills TranslationCache for EN / TH / RU when configured.
Register and get approved
Request agent access; admins approve your profile. Upload TAT/DBD in Profile or with the partnership request.
Selling options & tiered net pricing
Per-option start time, cut-off hours, hotel pickup vs meeting point, default seats, and rate tiers (retail + confidential net).
Connect LINE / Telegram (optional)
Link chat accounts in Profile for booking alerts and quick status updates alongside email.
Seat calendar & inventory ledger
Override availability per travel date. Agents see live remaining seats against ledger rows and defaults.
Live inventory
Shared seat ledger per travel date
Browse suppliers and request contracts
Discover publishing operators on /agent/tours. Submit a partnership with compliance docs to unlock net rates.
Approve agent partnerships
Review contract requests with TAT/DBD docs on /operator/contracts — activate, pause, or decline. Only ACTIVE partners see your catalogue.
Contract gate
ACTIVE partnership unlocks catalogue and net pricing
Shop translated catalogue
Tour copy overlays TranslationCache when your UI locale differs from the tour contentLocale (EN / TH / RU).
Alerts: portal, email, LINE, Telegram & WhatsApp
New or updated booking requests hit in-app notifications, React Email (Accept / Review / Reject deep links), LINE Flex, Telegram inline actions, and WhatsApp text with the same triggers.
Booking request
Agent submits → operator decides
Pick a date and live inventory
Per-day seat math respects cut-off in the tour timezone. Multi-quantity lines across rate tiers in one checkout.
Confirm, reject, or act from chat
Set pickup time and meeting point on confirm. One-tap accept or reject from LINE/Telegram mirrors portal logic for pending bookings.
Confirm or reject
Portal, email links, LINE and Telegram
Submit booking request
Guest, hotel or meeting logistics, cash-on-tour, and special requests go to the operator as PENDING_CONFIRMATION.
Post-confirm operations
Handle agent cancel requests, cash-on-tour changes, and confirmed-booking revision approvals — portal or chat postbacks.
Change workflows
Cancel · revision · cash-on-tour
Track decisions and changes
In-app alerts plus email, LINE, and Telegram when confirmed, rejected, cancelled, or when change requests are decided.
Vouchers, net invoices & accounting
Confirmed bookings generate guest voucher PDFs and B2B net invoices. Pro accounting tracks partner ledger and payment slips.
Settlement
PDFs · accounting · partnership messages
Instant PDF voucher and net invoice
On confirmation, download voucher PDF and net invoice from the booking; customer voucher email when an email is set.
Operator path
Publish tours in your timezone
Create tours with city, policies, age bands, and content locale. Gemini fills TranslationCache for EN / TH / RU when configured.
Selling options & tiered net pricing
Per-option start time, cut-off hours, hotel pickup vs meeting point, default seats, and rate tiers (retail + confidential net).
Seat calendar & inventory ledger
Override availability per travel date. Agents see live remaining seats against ledger rows and defaults.
Approve agent partnerships
Review contract requests with TAT/DBD docs on /operator/contracts — activate, pause, or decline. Only ACTIVE partners see your catalogue.
Alerts: portal, email, LINE, Telegram & WhatsApp
New or updated booking requests hit in-app notifications, React Email (Accept / Review / Reject deep links), LINE Flex, Telegram inline actions, and WhatsApp text with the same triggers.
Confirm, reject, or act from chat
Set pickup time and meeting point on confirm. One-tap accept or reject from LINE/Telegram mirrors portal logic for pending bookings.
Post-confirm operations
Handle agent cancel requests, cash-on-tour changes, and confirmed-booking revision approvals — portal or chat postbacks.
Vouchers, net invoices & accounting
Confirmed bookings generate guest voucher PDFs and B2B net invoices. Pro accounting tracks partner ledger and payment slips.
Where paths meet
- Live inventory — Shared seat ledger per travel date
- Contract gate — ACTIVE partnership unlocks catalogue and net pricing
- Booking request — Agent submits → operator decides
- Confirm or reject — Portal, email links, LINE and Telegram
- Change workflows — Cancel · revision · cash-on-tour
- Settlement — PDFs · accounting · partnership messages
Agent path
Register and get approved
Request agent access; admins approve your profile. Upload TAT/DBD in Profile or with the partnership request.
Connect LINE / Telegram (optional)
Link chat accounts in Profile for booking alerts and quick status updates alongside email.
Browse suppliers and request contracts
Discover publishing operators on /agent/tours. Submit a partnership with compliance docs to unlock net rates.
Shop translated catalogue
Tour copy overlays TranslationCache when your UI locale differs from the tour contentLocale (EN / TH / RU).
Pick a date and live inventory
Per-day seat math respects cut-off in the tour timezone. Multi-quantity lines across rate tiers in one checkout.
Submit booking request
Guest, hotel or meeting logistics, cash-on-tour, and special requests go to the operator as PENDING_CONFIRMATION.
Track decisions and changes
In-app alerts plus email, LINE, and Telegram when confirmed, rejected, cancelled, or when change requests are decided.
Instant PDF voucher and net invoice
On confirmation, download voucher PDF and net invoice from the booking; customer voucher email when an email is set.