# Vectrip User Manual

> A practical, end-to-end guide to using Vectrip — the corporate travel
> workflow platform that helps executive assistants, chiefs of staff,
> operations teams, family offices, and boutique agencies run travel from
> intake to itinerary delivery in one place.

---

## Table of Contents

1. [What Vectrip Is](#1-what-vectrip-is)
2. [Who Should Use Vectrip](#2-who-should-use-vectrip)
3. [Key Concepts and Vocabulary](#3-key-concepts-and-vocabulary)
4. [Roles and Permissions](#4-roles-and-permissions)
5. [Getting Started](#5-getting-started)
6. [Navigating the App](#6-navigating-the-app)
7. [Managing Travelers](#7-managing-travelers)
8. [Travel Requests](#8-travel-requests)
9. [Trips and Itineraries](#9-trips-and-itineraries)
10. [Approval Workflows](#10-approval-workflows)
11. [Policies and Compliance](#11-policies-and-compliance)
12. [Bookings and Confirmations](#12-bookings-and-confirmations)
13. [Change Requests and Incidents](#13-change-requests-and-incidents)
14. [Messaging and Concierge](#14-messaging-and-concierge)
15. [Notifications](#15-notifications)
16. [Travel Operations Center](#16-travel-operations-center)
17. [Reports](#17-reports)
18. [Traveler Experience (Web and iOS App)](#18-traveler-experience-web-and-ios-app)
19. [Support](#19-support)
20. [Billing and Subscription](#20-billing-and-subscription)
21. [Security, Privacy, and Sensitive Data](#21-security-privacy-and-sensitive-data)
22. [Settings](#22-settings)
23. [Common Tasks (Quick Recipes)](#23-common-tasks-quick-recipes)
24. [Troubleshooting](#24-troubleshooting)
25. [Glossary](#25-glossary)

---

## 1. What Vectrip Is

Vectrip is a corporate travel workflow platform that replaces fragmented
email chains, spreadsheets, approval bottlenecks, and manual coordination
with a single, auditable workspace.

It helps your team:

- Capture travel requests in plain language
- Maintain traveler profiles and preferences
- Protect sensitive traveler data (passports, loyalty numbers, etc.)
- Enforce company travel policies
- Route trips through structured approval workflows
- Coordinate bookings and confirmation details
- Deliver itineraries to travelers
- Track change requests, incidents, notifications, and support conversations
- Keep operational visibility across every active trip

---

## 2. Who Should Use Vectrip

- **Executive assistants** managing travel for one or several executives
- **Chiefs of staff** coordinating leadership travel
- **Family offices** booking and tracking principal and family travel
- **Private equity and venture capital firms** coordinating partner and
  portfolio travel
- **Consulting and professional services teams** managing client travel
- **Corporate operations teams** centralizing T&E
- **Boutique travel management companies** servicing multiple clients

---

## 3. Key Concepts and Vocabulary

| Term | Meaning |
|---|---|
| **Organization** | Your company's workspace. All data is isolated to your org. |
| **Traveler** | A person being booked (executive, family member, employee, client). |
| **Request** | An intake form / natural-language ask that starts a trip. |
| **Trip** | The structured workspace for a single journey — flights, hotels, ground, status, history. |
| **Itinerary** | The traveler-facing document with flights, hotels, transport, contacts, notes. |
| **Approval** | A decision (approve / reject / request changes) on a trip. |
| **Policy** | Rules that classify trips as in-policy, approval-required, or exception. |
| **Magic Link** | A secure, time-limited URL that lets a traveler or approver act without a dashboard login. |
| **Concierge** | The in-app AI assistant for drafting, summarizing, and answering travel questions. |
| **Operations Center** | The unified view of active travelers, departures, exceptions, and priorities. |

---

## 4. Roles and Permissions

Vectrip uses role-based access. Every user belongs to exactly one
organization and holds one or more roles within it.

| Role | Typical user | Can do |
|---|---|---|
| **Admin** | Company owner, head of operations | Everything: billing, settings, users, policies, sensitive traveler data, all trips. |
| **Assistant (EA)** | Executive assistant, travel coordinator | Manage travelers, create/edit trips, view & set sensitive data, send itineraries, message travelers. |
| **Approver** | Executive, manager, finance lead | Review and approve / reject / request changes on trips routed to them. |
| **Finance** | Finance / controller | View trips, spend, billing artifacts; no traveler editing. |
| **Traveler** | Executive, family member, employee | View their own trips and itineraries, submit change requests, message the team, manage their own profile. Travelers cannot see other travelers' data. |

> Sensitive traveler fields (passports, license, emergency contacts) are
> visible only to **Admin** and **Assistant** roles, and only within the
> traveler's own organization.

---

## 5. Getting Started

### 5.1 Create your account

1. Open the Vectrip sign-up page.
2. Sign up with your work email and a strong password, or with Google.
3. Verify your email if prompted.
4. Your organization workspace is created automatically and you become its
   first **Admin**.

### 5.2 Run the onboarding wizard

After first login, the onboarding wizard walks you through:

1. **Organization profile** — company name, logo, default timezone.
2. **First traveler** — add yourself or an executive you book for.
3. **Policy basics** — set hotel nightly cap, flight cabin rules, approval
   threshold.
4. **Approvers** — add the people who sign off on trips.
5. **Invite teammates** — assistants, finance, approvers.

You can revisit any step from **Settings → Onboarding**.

### 5.3 Two-factor authentication (recommended)

Enable TOTP-based MFA from **Settings → Security**. Use an authenticator
app (1Password, Authy, Google Authenticator). Save your recovery codes.

---

## 6. Navigating the App

The left sidebar is your map. Top-level sections:

- **Dashboard** — at-a-glance health of your travel program.
- **Requests** — incoming travel requests.
- **Trips** — every trip in progress or completed.
- **Travelers** — your roster.
- **Operations** — the live operations center.
- **Approvals** — your approval queue (visible to approvers).
- **Messages** — trip-scoped conversations.
- **Notifications** — your inbox of events.
- **Concierge** — AI assistant.
- **Reports** — spend, policy, activity.
- **Support Queue** — incoming traveler help requests (admin/assistant).
- **Policies** — rules engine.
- **Billing / Subscription** — plan, invoices, payment methods.
- **Settings** — organization, notifications, security.

The **global search** (top bar) jumps to any traveler, trip, or request.

---

## 7. Managing Travelers

### 7.1 Add a traveler

1. Go to **Travelers → New traveler**.
2. Fill in name, email, phone, title, department.
3. Add preferences: home airports, airline / hotel preferences, seating,
   loyalty programs.
4. Save.

### 7.2 Invite a traveler to the portal

From the traveler's page, click **Send activation link**. They receive an
email with a secure link that:

- Opens the **Vectrip iOS Companion App** directly if installed, or
- Opens the **web traveler portal** in their browser as a fallback.

The link expires; you can re-send it any time.

### 7.3 Sensitive data

The **Sensitive** tab stores encrypted, audit-logged fields:

- Passport number, expiry, country
- TSA PreCheck / Global Entry
- Driver's license
- Emergency contact

These fields are only readable by Admin and Assistant roles, are encrypted
at rest, and every read or write is logged.

### 7.4 Account status

A traveler's status can be:

- **Not invited** — added but no portal access sent
- **Invited** — activation email sent, not yet logged in
- **Active** — has accessed the portal
- **Disabled** — access revoked (cannot log in, but historical trips remain)

Disable a traveler from their profile page; re-enable any time.

---

## 8. Travel Requests

### 8.1 Submit a request

A request can be submitted in three ways:

- **From the dashboard** — click **New request**.
- **By a traveler** — from the iOS app or web portal.
- **From an email forward / chat paste** — paste the message into the
  natural-language request box.

The request supports plain English. Example:

> Book Kieran to Chicago July 20–22. Marriott preferred. Morning departure.
> Return evening. Stay near 200 W Madison.

Vectrip parses it into a structured request (traveler, destination, dates,
preferences, notes) that you can refine before turning it into a trip.

### 8.2 Triage requests

The **Requests** list shows status:

- **New** — needs review
- **In progress** — being worked
- **Converted to trip** — a trip workspace exists
- **Cancelled** — closed without booking

Open a request to edit it, add notes, or click **Create trip**.

---

## 9. Trips and Itineraries

### 9.1 Trip workspace

Each trip has a dedicated workspace with:

- **Overview** — traveler, destination, dates, status, policy badge,
  estimated total, executive summary.
- **Flights** — compare options, select preferred.
- **Hotels** — compare options, select preferred.
- **Ground transport** — car services, transfers, rental.
- **Itinerary** — the document delivered to the traveler.
- **Approvals** — decisions and comments.
- **Confirmations** — record locators, hotel confirmations.
- **Messages** — trip-scoped chat with the traveler.
- **Change requests** — traveler-initiated changes.
- **Incidents** — flight delays, hotel issues, irregular ops.
- **History** — full audit log.

### 9.2 Trip status

A trip moves through these statuses:

```
draft → proposed → pending_approval → approved → booked → in_progress → completed
                                   ↘ rejected
                                   ↘ changes_requested
                                   ↘ cancelled
```

Status changes are logged and trigger appropriate notifications.

### 9.3 Build the itinerary

From the trip workspace:

1. Add or select flight options.
2. Add or select a hotel.
3. Add ground transport, meeting locations, weather notes, emergency
   contacts.
4. Click **Generate itinerary** to assemble the document.
5. Review the preview.
6. Click **Send to traveler** — they get an email with a secure link.

You can also **Download PDF** for offline use.

### 9.4 Confirmation numbers

Record PNRs, hotel confirmations, and car service references in the
**Confirmations** section. They appear automatically on the traveler's
itinerary.

---

## 10. Approval Workflows

### 10.1 How approvals are routed

When a trip reaches the configured approval threshold (e.g., total cost
above policy, out-of-policy hotel rate), it is routed to the approvers
listed in **Settings → Approvers**.

Each approver receives:

- An in-app notification
- An email with a **secure approval link**
- (Optional) push to the iOS app

### 10.2 Acting on an approval

Approvers can:

- **Approve** — trip moves to `approved`
- **Reject** — trip moves to `rejected`, comment required
- **Request changes** — trip moves to `changes_requested`, comment required

External approvers (who don't have a dashboard login) act through the
secure approval link — no account required.

### 10.3 Approval audit

Every decision is recorded in the trip's history with actor, timestamp,
decision, and comment.

---

## 11. Policies and Compliance

### 11.1 What policies do

Policies classify each trip *before* booking so you spot issues early:

- **In policy** — green badge
- **Approval required** — yellow badge, blocks booking until approved
- **Exception** — red badge, requires admin override and a justification

### 11.2 What you can configure

In **Policies**:

- Hotel nightly rate cap (per city or global)
- Flight cabin class rules by duration or route
- Per-trip spending cap
- Approval threshold (any trip above $X requires approval)
- Preferred airlines and hotel chains
- Allowed booking channels

Changes apply to new trips only. Existing trips keep the policy they were
evaluated against.

---

## 12. Bookings and Confirmations

Vectrip is a workflow platform, not a GDS. Your team books through your
preferred channel (online travel tool, agent, direct), then records the
confirmation in Vectrip:

1. Open the trip.
2. Click **Mark booked** or **Mark booked externally**.
3. Enter record locators, hotel confirmations, ticket numbers.
4. Attach receipts if desired.
5. Confirm.

The trip moves to `booked` and the traveler's itinerary is updated.

A **Manual confirmation** dialog is available when you need to override
auto-detected fields.

---

## 13. Change Requests and Incidents

### 13.1 Change requests (traveler-initiated)

A traveler can submit a change request from the web portal or iOS app:

- "Move my hotel one night later"
- "Switch to an aisle seat"
- "Add a rental car"

Change requests appear in the trip's **Change requests** tab and in the
**Operations** queue. Status: `open → in_review → approved | rejected →
implemented`.

### 13.2 Incidents (irregular ops)

Use **Incidents** for things that happen *to* a trip:

- Flight delay or cancellation
- Hotel overbooking
- Lost passport
- Medical emergency

Each incident has severity, owner, timeline, and resolution notes. Open
incidents surface on the Operations dashboard.

---

## 14. Messaging and Concierge

### 14.1 Trip messages

Each trip has a chat thread between the traveler and the operations team.
Messages are stored with the trip — no email archaeology required.

### 14.2 Concierge (AI assistant)

The **Concierge** drawer / page lets you:

- Draft itinerary blurbs and traveler messages
- Summarize a trip in one paragraph for an exec
- Suggest restaurants, meeting venues, or backup options
- Ask travel questions ("What's the visa rule for a US passport going to
  Brazil?")

Concierge does not auto-send anything; it produces drafts you review.

---

## 15. Notifications

### 15.1 Channels

Notifications can be delivered through:

- **In-app** — bell icon in the top bar
- **Email** — branded, queued, deliverable, with one-click unsubscribe
- **iOS push** — to the traveler's Companion App
- **SMS / WhatsApp** — where enabled by your organization

### 15.2 Manage preferences

Each user controls their channels in **Settings → Notifications**.
Travelers also control theirs from the iOS app or web portal.

### 15.3 What triggers a notification

- New request submitted
- Trip awaiting approval (to approvers)
- Approval decision (to assistants and the traveler)
- Itinerary ready (to traveler)
- Booking confirmed (to traveler)
- Change request status updates
- New message
- Trip reminders (departure soon)

---

## 16. Travel Operations Center

The **Operations** page is the live cockpit. It shows:

- **Active travelers** — who's in motion today
- **Upcoming departures** — next 7 days
- **Pending approvals** — counts by approver
- **Open requests** — needing triage
- **Policy exceptions** — trips needing override review
- **Traveler readiness** — passports expiring, missing data
- **Travel spend** — period-over-period
- **Support issues** — open tickets
- **Needs attention queue** — anything overdue

Use it as your morning standup view.

---

## 17. Reports

In **Reports** you can pull:

- Spend by department, traveler, or period
- Policy compliance rate
- Booking lead time
- Approval turnaround time
- Top destinations, airlines, hotels
- Cancellations and changes

Export each report as CSV.

---

## 18. Traveler Experience (Web and iOS App)

### 18.1 Activation

When you invite a traveler, they receive an activation email. Tapping the
link:

- **On iPhone with the Vectrip Companion App installed** → opens the app
  directly via Universal Links.
- **Anywhere else** → opens the web traveler portal as a fallback.

In either case the traveler sets a password (or signs in with their
existing one) and lands on their dashboard.

### 18.2 What travelers can do

- See **all their trips**, past and upcoming
- Open their **itinerary** with flights, hotels, ground, contacts
- **Download a PDF** of the itinerary
- Submit **change requests**
- **Message** the operations team
- **Update their profile and preferences**
- Receive **push notifications** for itinerary updates, status changes,
  and messages (iOS)
- See and act on **secure magic links** the team sends

Travelers never see other travelers' data, and cannot see staff-only
fields (internal notes, policy overrides, etc.).

### 18.3 iOS Companion App URL schemes

The Companion App handles these activation shapes:

- `vectrip://activate`
- `vectrip://traveler-activate`
- `https://vectrip.com/traveler-activate`
- `https://vectrip.com/ios/auth-callback`
- `https://vectrip.com/auth/callback`
- `https://vectrip.com/auth/confirm`
- Any callback URL carrying `token_hash`, `code`, `access_token`, or
  `refresh_token`

---

## 19. Support

### 19.1 For travelers

Travelers can reach the operations team via:

- **In-app chat** on a trip
- **Support page** in the portal / app
- **Email reply** to any Vectrip notification

### 19.2 For operations teams (Support Queue)

The **Support Queue** is where incoming traveler help requests land. Each
ticket has priority, status, optional AI-generated summary and suggested
response, assignment, and resolution timestamps.

Workflow: `open → in_progress → waiting_on_traveler → resolved → closed`.

### 19.3 App-level support

For platform questions (login issues, billing, bugs), use **App Support**
inside the app, or contact Vectrip support directly.

---

## 20. Billing and Subscription

### 20.1 Plans

Vectrip is sold as a subscription, usually billed monthly or annually
based on the number of travelers and/or trips per month.

### 20.2 Trial

New organizations get a 14-day implicit trial. During the trial, every
feature is available and you can write data freely.

### 20.3 Subscription states

| Status | Meaning | Can write? |
|---|---|---|
| **Trialing** | In trial period | Yes |
| **Active** | Paid subscription in good standing | Yes |
| **Past due** | Payment failed, grace period | Yes |
| **Cancelled / Unpaid / Incomplete** | Subscription not in good standing | Read-only |
| **No subscription** | Trial expired, no plan chosen | Read-only |

In read-only mode you can still view everything; new writes are blocked
until you re-subscribe.

### 20.4 Managing your subscription

Go to **Subscription** to:

- See current plan, status, and next renewal date
- Upgrade or downgrade
- Update payment method
- Download invoices
- Cancel (effective at period end)

---

## 21. Security, Privacy, and Sensitive Data

### 21.1 Authentication

- Email + password or Google sign-in
- Optional TOTP-based MFA
- Session timeout on idle
- Server-side session validation

### 21.2 Data isolation

Every record is tagged with your organization. Row-level security in the
backend ensures users only ever see data belonging to their org.

### 21.3 Sensitive traveler data

Stored in a separate, encrypted table. Decryption happens server-side only
for Admin and Assistant roles. Every read and write is recorded in the
audit log with actor, target, and timestamp.

### 21.4 Magic links

Used for traveler activation, itinerary delivery, and external approvals.
Properties:

- 256-bit random tokens
- Stored as SHA-256 hashes (raw token never persisted)
- Short TTL: approval links 48h, itinerary links 7d (configurable up to
  30d)
- Revocable from the trip workspace
- View counts and last-viewed timestamp recorded

### 21.5 Audit logging

Every meaningful action — trip created, status changed, approval
recorded, sensitive field viewed, magic link issued — is written to the
audit log. View it in **Audit** (admin only).

### 21.6 Legal pages

The following are bundled with the product and shown publicly:

- Terms of Service
- Privacy Policy
- Acceptable Use
- Data Retention
- Security
- Cookies

Acceptance is recorded per user.

---

## 22. Settings

The **Settings** area covers:

- **Organization** — name, logo, timezone, default policies
- **Team** — invite, change roles, remove users
- **Approvers** — who signs off, in what order
- **Notifications** — your personal channel preferences
- **Security** — password, MFA, active sessions
- **Email templates** — preview and customize the emails travelers receive
- **SMS preferences** — opt-ins, default templates
- **Integrations** — Stripe (billing), Twilio (SMS), Duffel (travel data),
  OpenAI (concierge) — admin only
- **Onboarding** — re-open any onboarding step

---

## 23. Common Tasks (Quick Recipes)

### 23.1 Book a one-stop trip for an executive

1. **Travelers → New traveler** (skip if they exist).
2. **Requests → New request** → paste the ask.
3. Convert to trip.
4. Add flight + hotel options, mark preferred.
5. If above the threshold, click **Send for approval**.
6. Once approved, book externally, then **Mark booked** with confirmations.
7. **Send itinerary** to the traveler.

### 23.2 Re-send a traveler activation link

Travelers → open the traveler → **Send activation link**. Old links remain
valid until they expire or you revoke them.

### 23.3 Update a passport

Travelers → open the traveler → **Sensitive** tab → edit. Action is
audit-logged.

### 23.4 Cancel a trip

Open the trip → **Status → Cancel** → enter reason. Traveler and approver
are notified; the audit log records the cancellation.

### 23.5 Pull last quarter's spend

Reports → **Spend** → set date range to last quarter → **Export CSV**.

### 23.6 Revoke a sent itinerary link

Trips → open the trip → **Itinerary → Active links** → click **Revoke**
next to the link.

### 23.7 Bring a former traveler back

Travelers → open the disabled traveler → **Re-enable access**. Their
history is preserved.

---

## 24. Troubleshooting

### Login problems

- **Can't sign in** — use **Forgot password**. The reset link is valid for
  a limited time; request a fresh one if it expired.
- **MFA code rejected** — your authenticator may be out of sync; use a
  recovery code, then re-enroll MFA from Settings.
- **Google sign-in fails** — try email/password, then re-link Google from
  Settings → Security.

### Traveler can't open their link

- **iOS app installed, link opens Safari** — make sure the app version is
  current; reinstalling forces iOS to re-fetch the universal-link map.
- **Link expired** — open the trip, generate a new link, and send it.
- **Link revoked** — generate a new one.

### Traveler not receiving emails

- Check **Operations → Communications monitor** for failed sends.
- Check the traveler isn't on the **suppression list** (bounced, complained,
  or unsubscribed) — Settings → Email → Suppressions.
- Ask the traveler to whitelist your sender domain.

### Approval link doesn't work

- Approval links expire after 48 hours by default. Open the trip → resend.
- Make sure the approver's email matches the one in Settings → Approvers.

### "Read-only" banner

Your subscription is in a state that blocks writes (canceled, unpaid, or
trial expired). Go to **Subscription** → choose a plan → add a payment
method.

### Push notifications not arriving on iOS

- Open the iOS app → Settings → confirm push is enabled.
- The team can re-issue a push from **Push test** (admin tool).
- Inactive device tokens are automatically retired; the next sign-in
  registers a fresh one.

---

## 25. Glossary

- **AASA** — Apple App Site Association, the file iOS uses to decide which
  URLs open in your app.
- **Audit log** — Append-only record of meaningful actions.
- **DLQ** — Dead-letter queue. Where messages go after repeated delivery
  failures.
- **Idempotency key** — A token that prevents the same email/notification
  from being sent twice.
- **Magic link** — Tokenized URL that grants limited, time-bound access.
- **Operations Center** — The live dashboard for travel ops.
- **PNR** — Passenger Name Record, the airline reservation reference.
- **Policy exception** — A trip that violates policy and required override.
- **RLS** — Row-Level Security. Database-level rules that restrict each
  user to their organization's data.
- **Suppression list** — Recipients that should not be emailed (bounced,
  complained, or unsubscribed).
- **Universal Link** — An HTTPS URL that opens directly in an iOS app when
  the app is installed.

---

*Need something this manual doesn't cover? Open the in-app Concierge or
reach out to Vectrip support.*
