Case study
BaggageRepairs.com
Independent luggage damage reports for airline, insurance, courier and transport claims. Travellers upload photos online and receive a claim-ready PDF within 24 hours, for a fixed £10.
Visit baggagerepairs.com- Client
- Baggage Repairs Ltd, UK
- Our role
- Product, design, development and operations
- Year
- 2026
- Status
- Live in four languages

The client
Baggage Repairs Ltd is a UK company co-owned by GREATCODE's founder. GREATCODE designed and built the whole platform end to end, and still develops and runs it. Being on both sides means we use the software we build every day, and what we learn from real orders goes straight back into the product.
The problem
When luggage is damaged in transit, airlines, insurers and couriers usually want an independent assessment before they pay: can the item be repaired, what will it cost, or should it be replaced? Getting one has meant finding a repair shop, taking the bag in and waiting. BaggageRepairs.com moves the whole process online: no workshop visit and no shipping.
How it works
- 01
Details and photos
The traveller describes the luggage and uploads photos. Photos are compressed in the browser, so uploads stay quick on mobile data.
- 02
A fixed £10 fee
Payment goes through Stripe. When a refund is due, it is issued straight from the order page in the admin dashboard.
- 03
AI draft, specialist review
An AI model drafts the assessment from the photos and details, including repair costs. A specialist reviews, edits and approves every report before it is sent.
- 04
A claim-ready report
The PDF report arrives by email within 24 hours, ready to attach to the claim. Its fingerprint is stored, so anyone can later check that it is genuine.
Inside the product



What we built
AI-assisted assessments
Photos and damage details go to an AI model through OpenRouter, which drafts the findings and structured repair costs. The draft opens in the assessment editor, where the specialist has the final word. Names, emails and order references are never sent.
Report verification
Every report is fingerprinted with SHA-256. On the public verify page, the PDF is hashed in the visitor's browser and only the fingerprint is checked, so a single changed character shows up. Signed copies are uploaded back, so the version the airline receives verifies too.
Admin dashboard and payments
Stripe payments confirmed by webhooks. In the dashboard: orders with filters, a page per order, the assessment editor, PDF generation with an optional signature block, and refunds issued from the order page.
Tracking and follow-up
Customers can track their order. After the claim, a follow-up email asks how it went and whether the claim succeeded, and the answers feed the testimonials on the site.
Four languages, built for search
English, German, French and Spanish, each on its own URLs. Pages are prerendered, with structured data, hreflang, a sitemap submitted through IndexNow, and llms.txt for AI assistants.
Privacy and security
Data erasure on request under GDPR, Cloudflare Turnstile on public forms, rate limits on every public endpoint, and a privacy policy that says exactly how data and AI are used.
Technology
- Frontend
- ReactTypeScriptViteTailwind CSSshadcn/uiReact Routeri18next
- Backend
- Supabase PostgresSupabase AuthSupabase StorageEdge Functions (Deno)
- Integrations
- StripeOpenRouterResendjsPDFCloudflare Turnstile
- Hosting and monitoring
- VercelSentryPostHogVercel Analytics
- Quality
- VitestGitHub ActionsStaging and production pipelines
Have an idea like this?
We take products from the first sketch to production, and keep improving them after launch.
Get in Touch