Claude Code for Travel Agencies: Build Itineraries and Quotes Safely
Draft safer travel itineraries and quotes with Claude Code using a reusable prompt, human review, and a tested script.
Imagine several requests arriving late on a Friday. One asks for two nights in Kyoto next weekend, a budget around $1,400, fall colors, and a kaiseki dinner. While the planner compares rooms, travel times, prices, and terms, the next request is already waiting.
This article uses a fictional Kyoto itinerary to reproduce that workflow. No real traveler, booking, customer, supplier, or travel-agency data was used. ClaudeCodeLab checked the steps for turning an anonymized request into a draft and ran the quote-checking code with invented amounts. It did not verify a promised percentage or number of minutes saved.
Claude Code handles assembly and formatting. A human remains responsible for prices, availability, cancellation terms, and final approval. That boundary is the foundation of the workflow.
Key takeaways
- Assembling and writing up itineraries, quotes, and proposals is something AI is good at. That frees the planner to focus on choosing destinations and talking to customers.
- The article includes a reusable prompt template and a verification script that catches pricing math errors mechanically.
- Numbers where a mistake becomes an incident, prices, inventory, cancellation policies, are always checked by a human. Drawing that line is the condition for using this safely.
- Black out personal data like names and booking numbers before handing anything to the AI. Decide the “never paste raw data” rule up front.
- Measure the same tasks before and after a pilot; calculate ROI from your own median times instead of assuming a fixed saving.
Where exactly is the weight in travel agency work
You’re probably a planner who builds custom trips, either at a storefront or in corporate sales. The more your work leans toward listening to requests and building from scratch, rather than selling packages, the more this article should land.
A custom proposal usually moves through these steps.
- Intake: ask about destination, party size, budget, preferences, and non-negotiables.
- Sourcing: research candidate hotels, transport, and local experiences along with their prices.
- Assembly: drop everything onto a schedule while watching travel times and availability.
- Quoting: add up lodging, transport, handling fees, and tax to land on a total.
- Write-up: format it into an itinerary and proposal and attach the fine print.
- Present and revise: hand it to the customer and fold in changes like “make day two more sightseeing-heavy.”
Steps 1 and 6 need human judgment. A planner must clarify priorities with the traveler and take responsibility for the proposal. Steps 3 through 5 are better candidates for assistance because they place verified material into a repeatable format. Revisions can still create rework when the itinerary changes but the quote does not.
The moment someone says “could we slow day two down a bit,” the travel times and the prices all have to be rebuilt. You shift one Excel row, the total stops adding up, and you don’t notice until you’ve already sent it and your face goes red. These small incidents are quietly common on the floor.
What to delegate to AI versus what a human always decides
Leave this fuzzy and you’ll have an incident. Let’s draw the line first.
| Step | Delegate to AI | Human always decides |
|---|---|---|
| Intake | Check for missing questions | The honest budget, rapport, reading the mood |
| Sourcing | Background research, building comparison tables | Final stock/availability check, what to recommend |
| Assembly | A draft schedule that accounts for travel time | Whether the flow is realistic and matches stamina |
| Quoting | Building the formulas, drafting the total | Cost prices, exchange rates, cancellation figures |
| Write-up | Formatting into itinerary and proposal, typo check | Final sign-off, locking in the customer’s name |
There’s only one line worth memorizing. Any number where a mistake turns into a refund or a complaint gets checked by a human, always. Price, availability, cancellation fees, age-based rates, exchange rates. You don’t take the AI’s draft at face value here; you reconcile it against the official rates from your supplier. The AI is a fast write-up clerk, not a pricing guarantee.
Use case 1: Turn a request memo into a draft itinerary
Intake notes are usually a scattered bullet list. In this example, identifying details are removed before the notes are given to the AI and shaped into a schedule.
Here’s a prompt template you can use as-is.
You are a veteran planner at a travel agency.
From the request memo below, build a draft itinerary with realistic travel times.
# Request memo
- Destination: Kyoto
- Dates: 3 days, 2 nights
- Party: a couple, 2 people
- Budget: around $1,400 total
- Wishes: fall-color spots, kaiseki dinner at night, don't cram the travel
# Output rules
- Split each day into morning / afternoon / evening
- Give each item an estimated duration and a mode of transport
- Mark any leg over 1 hour with "[long leg]"
- Where a price is needed, write [TO CONFIRM: price] and never fill in numbers
- At the end, list the items that need confirmation as bullet points
The last two lines are the crux. Do not let the AI fill in prices; leave a [TO CONFIRM: price] placeholder. That prevents a plausible-looking, unverified price from slipping into the draft. A planner should add only rates checked in the booking system or against the supplier’s current quote.
If you’re not yet comfortable with the basics of Claude Code, read the Claude Code getting started guide first so you can try this template right away.
Use case 2: Catch quote-total errors mechanically
The scariest thing in a proposal is a pricing addition error. One night with two meals times the party size, tax and service charge, handling fee. Build it in Excel, add a row, and the sum range slips, so you send a lower number without noticing. That’s the apologize-and-eat-the-difference path.
So I prepared a script that checks the quote breakdown mechanically. It runs anywhere you have Node.js. All it does is re-add every line in the breakdown and verify that it matches the total you’re presenting.
// verify-quote.mjs Check that the line items and the total agree
// Run: node verify-quote.mjs
const quote = {
customer: "(redacted)",
items: [
{ label: "Lodging night 1, Inn A, 2 people", amount: 48000 },
{ label: "Lodging night 2, Inn B, 2 people", amount: 52000 },
{ label: "Bullet train, round trip, 2 people", amount: 56000 },
{ label: "Local guide, half day", amount: 18000 },
{ label: "Handling fee", amount: 8000 },
],
tax: 14400, // consumption tax, etc.
presentedTotal: 196400, // the total written in the proposal
};
const subtotal = quote.items.reduce((sum, item) => sum + item.amount, 0);
const calcTotal = subtotal + quote.tax;
console.log(`Subtotal: ${subtotal.toLocaleString()}`);
console.log(`Tax: ${quote.tax.toLocaleString()}`);
console.log(`Calculated total: ${calcTotal.toLocaleString()}`);
console.log(`Proposal total: ${quote.presentedTotal.toLocaleString()}`);
if (calcTotal === quote.presentedTotal) {
console.log("OK: line items and total agree");
} else {
const diff = quote.presentedTotal - calcTotal;
console.log(`NG: off by ${Math.abs(diff).toLocaleString()}. Fix it before sending the proposal.`);
process.exit(1);
}
Set presentedTotal to the number on the proposal and the script stops with NG the instant anything is off. It’s the last gatekeeper before the customer sees it. The line-item amounts themselves are assumed to be values a human confirmed with the supplier; this script only re-checks the math. Treat verification and price confirmation as separate jobs, that’s what matters.
If you want to push your prompt accuracy further, see advanced prompt engineering tips as well.
Use case 3: Apply “slow down day two” in one shot
For revisions, marking every changed passage makes review easier. In the fictional scenario, use this prompt:
Apply the following changes to the itinerary above.
- Day 2: drop one morning item, and add a 1-hour rest at the hotel in the afternoon
- Rewrite the durations for any legs whose travel changes as a result
- Reset any item whose price changes back to [TO CONFIRM: price]
- Prefix each changed spot with "* CHANGED" and explain in one line what you changed
Asking it to “mark the changed spots” is the trick. It makes each change easier to trace. Items whose price may shift return to [TO CONFIRM: price], while recalculation stays in human hands. That turns “the itinerary changed but the total did not” into an explicit review item.
If you teach your project the itinerary and proposal templates up front, you don’t have to give instructions from zero every time. The CLAUDE.md best practices guide is a good reference for how.
A copy-paste pre-send checklist
Run every proposal through this before sending, on paper or in a note, whatever works.
- Did you reconcile prices against the supplier’s official quote?
- Did you do a final check on availability and inventory? (Not trusting the AI draft?)
- Did you put the cancellation policy and age-based rates in the body?
- Did you run the verification script and confirm the total matches?
- Did you restore the customer’s name and booking number to the correct spelling?
- Is the travel time realistic? (Especially for elderly travelers or families with small kids.)
Personal data and security notes
Travel arrangements contain sensitive data: names, dates of birth, passport numbers, and booking numbers. Do not paste that raw data into an AI workflow.
The operating rules are simple, just two. One, black out personal data before handing it over. Replace the name with “Guest A” and the booking number with “(redacted).” You don’t need real names to assemble or write up a trip. Two, keep the raw data local, and have a human do only the final name merge by hand. Let the AI build the mold; fill in the personally identifying information at your desk. Keep that order and nothing you’d regret leaking ever leaves.
If you’re rolling this out as a company, it’s safer to put in writing what’s okay to share and what’s off-limits. We can sort out that team line-drawing together in training and consulting. Hand a fuzzy judgment standard to everyone and someone will inevitably paste raw data.
How to measure the result without overstating it
Results depend on the agency’s templates, itinerary complexity, and review process. Measure 5 to 10 comparable proposals before and during a pilot, then compare medians. Include human price checks and revision time, not just AI generation time.
| Measurement | Before pilot | During pilot |
|---|---|---|
| Intake note to first draft | Record the median for 5-10 cases | Record the median for comparable cases |
| Revision request to new proposal | Record by revision type | Repeat with the same revision type |
| Quote differences found | Record count and cause | Record count and cause |
| Human final review | Record time spent | Keep the review and record its time |
Estimate monthly hours saved as monthly proposals × (before median - pilot median) / 60. The following is an illustration, not a measured result: if 60 monthly proposals each take 20 fewer minutes, the gross estimate is 20 hours. Subtract setup, tool, and additional review costs before deciding whether the pilot pays off.
If you’re worried about whether a non-engineer can use this, reading Claude Code for non-engineers should lower the bar for the first step.
FAQ
Q. I’m worried the AI will just decide prices on its own.
A. Use [TO CONFIRM: price] in the prompt so it never fills in numbers. Only values a human confirmed with the supplier go in. Fix the AI’s role as the formula-and-write-up clerk and it won’t run off the rails.
Q. Is it okay to enter the customer’s real name and booking number? A. Don’t. Black them out before handing it over, and do only the final name merge by hand. You don’t need personal names to assemble and write up.
Q. We have our own itinerary template. Can it be reproduced? A. Yes. Teach the project your own mold and formatting rules and it’ll produce output in that shape every time. For the details, check the configuration instructions in the official documentation.
Q. Can I fully automate this and skip human review? A. No. A human must retain price, inventory, and cancellation-policy checks. Skip that review and mistakes can go straight to the customer. The safe scope for AI is “assemble and write up.”
What we actually tested
ClaudeCodeLab ran the quote-checking script in this article using fictional amounts only. With the listed line items and tax, the calculated total matched the displayed total and the script printed OK. We then changed presentedTotal by $10; the script printed NG and exited with status 1.
We also reviewed prompt output generated from the fictional request. The price fields remained as [TO CONFIRM: price], and a manual check found no names, booking numbers, passport details, or other personally identifiable information. No real customer, supplier, booking, or agency system was involved.
This test establishes only that the fictional placeholder workflow and arithmetic check behaved as described. It does not establish production accuracy or a guaranteed time saving. Start with an anonymized test case, then have a planner verify live prices, availability, cancellation terms, and the final document. If you get stuck on the first steps, start with the Claude Code getting started guide.
For the official how-to, see the Claude Code official documentation as well.
Related Posts
Speed Up Home Care Visit Notes and Caregiver Care Plans With Claude Code
A field-tested workflow for home care coordinators to draft visit notes and care plans with AI, with copy-paste prompts and a check script.
How an English Language School Cuts Lesson Prep and Reports with Claude Code
Speed up English-school handouts and parent reports with Claude Code: copy-paste prompts, a runnable script, and privacy tips, tested.
Daycare & Preschool Newsletters: Cut Writing Time in Half with Claude Code
Cut daycare and preschool writing time with Claude Code: contact notes, class letters, and newsletters, with prompts and data-safety rules.
Free PDF: Claude Code Cheatsheet
Enter your email and download the one-page Claude Code cheatsheet for commands, review habits, and safe workflows.
We handle your data with care and never send spam.
Level up your Claude Code workflow
Start with the free PDF, use Gumroad guides when you need repeatable workflows, and book consultation when rollout or revenue paths need human judgment.
About the Author
Masa
Engineer focused on practical Claude Code workflows. Runs claudecode-lab.com, a 10-language technical media site.
Related Products
Claude Code Quick Reference Cheatsheet
A free one-page reference for daily Claude Code work.
Keep the essential commands, file-reference patterns, CLAUDE.md reminders, prompting habits, review cues, and debugging workflow notes next to your editor.
50 Battle-Tested Claude Code Prompt Templates
Copy, paste, ship. 50 production-ready prompts.
Use proven prompts for code review, refactoring, testing, documentation, debugging, architecture, and incident response.