AirHelp
Pursue passenger compensation for delayed, canceled, or overbooked flights
A useful personal organizer is buildable, but AirHelp is more than the visible intake form. A local app can assess EC261 and UK261 eligibility, organize evidence, draft letters, and track deadlines. It cannot responsibly reproduce AirHelp's managed airline correspondence, cross-jurisdictional legal judgment, funded court action, and professional accountability in one sitting. This is a credible personal substitute for straightforward self-service claims, not a full replacement.
Build verification: not recorded. How we judge buildability
What you give up
- AirHelp staff handling airline correspondence and negotiation
- case-specific legal judgment across jurisdictions
- lawyer access and funded legal action under a no-win, no-fee model
- commercial flight, weather, and disruption data used to validate claims
- professional support and accountability when a claim becomes contested
Why people still pay
People pay AirHelp to transfer the work, uncertainty, follow-up, and legal escalation to a specialist on a no-win, no-fee basis. A local tool can organize a straightforward self-service claim, but it does not negotiate with the airline, fund litigation, or take professional responsibility for a contested case.
Your build guide
The stack, security requirements, and agent rules for a focused replacement.
Before you start
- A supported Node release, a writable local data directory and a separate backup location. Bind to localhost; remote use requires authentication and HTTPS first. User-entered journey facts, evidence files and selected current official passenger-rights sources. No scraping, law-firm integration or model key is needed.
- Implementation components: Node.js, TypeScript and Express with server-rendered HTML and small browser modules. SQLite through better-sqlite3 with migrations, prepared statements and a single background worker.
- Scope boundary: No legal representation, airline negotiation, funded litigation or guaranteed compensation.
Use these project rules and optional skill references alongside the prompt. Review each skill before adding it to your agent; the AGENTS.md export includes the same guidance.
Optional external skill: web-design-guidelines — Review web interfaces for accessibility, keyboard focus, forms, navigation and interaction quality. Review its instructions and compatibility before use; it does not grant deployment, data-access or publication permission.
Optional external skill: sharp-edges — Review security-sensitive APIs and configuration for dangerous defaults and easy-to-misuse interfaces. Review its instructions and compatibility before use; it does not grant deployment, data-access or publication permission.
Project rule — data model: journeys, flight legs, passengers, disruptions, evidence, source-versioned EU/UK rule packs and correspondence
Project rule — preserve this invariant: Unknown facts stay unknown; rule packs require an explicit source/date and cannot manufacture eligibility, legal advice or deadlines.
Project rule — acceptance evidence: An incomplete multi-leg journey cannot receive a definitive eligibility result; editing the arrival delay changes the explainable advisory result without altering evidence.
Implementation plan
Phase 1
Scope and fixtures. Implement this bounded workflow: Organize a flight disruption case, record the route and known facts, show a possible compensation tier with unresolved questions, and produce an editable claim-letter draft. Keep official-source links and user-entered escalation reminders with the case. Record prerequisites, select representative user-owned fixtures and document the unsupported features: No legal representation, airline negotiation, funded litigation or guaranteed compensation.
Phase 2
Durable model. Model journeys, flight legs, passengers, disruptions, evidence, source-versioned EU/UK rule packs and correspondence Add migrations or a versioned document format, explicit validation, stable IDs and a visible import-error report. Preserve this rule: Unknown facts stay unknown; rule packs require an explicit source/date and cannot manufacture eligibility, legal advice or deadlines.
Phase 3
Complete the first useful path. Implement the workflow's input, review and output interface, with clear controls and explicit empty/error states. Use short SQLite transactions and persist job state before starting work. Give retries stable operation IDs; report incomplete or unknown results instead of silently repeating them.
Phase 4
Permissions and integration failure. Reject unexpected origins and unbounded request bodies even on localhost. Keep credentials outside the database export and redact sensitive text from logs. Request integration credentials and permissions only for the enabled feature; show a disconnected state instead of mock results.
Phase 5
Portable handoff. Use a consistent SQLite backup and an attachment manifest. Export portable JSON/CSV, then restore to a new directory without overwriting the original data. Include setup, operating limits, fixture walkthrough and shutdown/restart instructions in the README.
Phase 6
Acceptance scenarios. An incomplete multi-leg journey cannot receive a definitive eligibility result; editing the arrival delay changes the explainable advisory result without altering evidence. Repeat the workflow after restart and with a denied permission or unavailable dependency; show recoverable failure rather than a success placeholder.
WORKING SLICE Organize a flight disruption case, record the route and known facts, show a possible compensation tier with unresolved questions, and produce an editable claim-letter draft. Keep official-source links and user-entered escalation reminders with the case. Build this scoped AirHelp-inspired workflow with a documented data model and visible failure states. Architecture - Node.js, TypeScript and Express with server-rendered HTML and small browser modules. - SQLite through better-sqlite3 with migrations, prepared statements and a single background worker. Prerequisites and limits A supported Node release, a writable local data directory and a separate backup location. Bind to localhost; remote use requires authentication and HTTPS first. User-entered journey facts, evidence files and selected current official passenger-rights sources. No scraping, law-firm integration or model key is needed. Outside this release: No legal representation, airline negotiation, funded litigation or guaranteed compensation. Data model and correctness journeys, flight legs, passengers, disruptions, evidence, source-versioned EU/UK rule packs and correspondence Invariant: Unknown facts stay unknown; rule packs require an explicit source/date and cannot manufacture eligibility, legal advice or deadlines. Use short SQLite transactions and persist job state before starting work. Give retries stable operation IDs; report incomplete or unknown results instead of silently repeating them. Security and privacy Reject unexpected origins and unbounded request bodies even on localhost. Keep credentials outside the database export and redact sensitive text from logs. Recovery and export Use a consistent SQLite backup and an attachment manifest. Export portable JSON/CSV, then restore to a new directory without overwriting the original data. Implementation order 1. Phase 1 — Scope and fixtures. Implement this bounded workflow: Organize a flight disruption case, record the route and known facts, show a possible compensation tier with unresolved questions, and produce an editable claim-letter draft. Keep official-source links and user-entered escalation reminders with the case. Record prerequisites, select representative user-owned fixtures and document the unsupported features: No legal representation, airline negotiation, funded litigation or guaranteed compensation. 2. Phase 2 — Durable model. Model journeys, flight legs, passengers, disruptions, evidence, source-versioned EU/UK rule packs and correspondence Add migrations or a versioned document format, explicit validation, stable IDs and a visible import-error report. Preserve this rule: Unknown facts stay unknown; rule packs require an explicit source/date and cannot manufacture eligibility, legal advice or deadlines. 3. Phase 3 — Complete the first useful path. Implement the workflow's input, review and output interface, with clear controls and explicit empty/error states. Use short SQLite transactions and persist job state before starting work. Give retries stable operation IDs; report incomplete or unknown results instead of silently repeating them. 4. Phase 4 — Permissions and integration failure. Reject unexpected origins and unbounded request bodies even on localhost. Keep credentials outside the database export and redact sensitive text from logs. Request integration credentials and permissions only for the enabled feature; show a disconnected state instead of mock results. 5. Phase 5 — Portable handoff. Use a consistent SQLite backup and an attachment manifest. Export portable JSON/CSV, then restore to a new directory without overwriting the original data. Include setup, operating limits, fixture walkthrough and shutdown/restart instructions in the README. 6. Phase 6 — Acceptance scenarios. An incomplete multi-leg journey cannot receive a definitive eligibility result; editing the arrival delay changes the explainable advisory result without altering evidence. Repeat the workflow after restart and with a denied permission or unavailable dependency; show recoverable failure rather than a success placeholder. Acceptance An incomplete multi-leg journey cannot receive a definitive eligibility result; editing the arrival delay changes the explainable advisory result without altering evidence. Use real source data or clearly labeled fixtures. Explain unsupported input and provider failures; do not fabricate analytics, delivery receipts, accuracy claims or security guarantees. Optional agent guidance Optional external skill: [web-design-guidelines](https://github.com/vercel-labs/agent-skills/blob/main/skills/web-design-guidelines/SKILL.md) — Review web interfaces for accessibility, keyboard focus, forms, navigation and interaction quality. Review its instructions and compatibility before use; it does not grant deployment, data-access or publication permission. Optional external skill: [sharp-edges](https://github.com/trailofbits/skills/blob/main/plugins/sharp-edges/skills/sharp-edges/SKILL.md) — Review security-sensitive APIs and configuration for dangerous defaults and easy-to-misuse interfaces. Review its instructions and compatibility before use; it does not grant deployment, data-access or publication permission. Project rule — data model: journeys, flight legs, passengers, disruptions, evidence, source-versioned EU/UK rule packs and correspondence Project rule — preserve this invariant: Unknown facts stay unknown; rule packs require an explicit source/date and cannot manufacture eligibility, legal advice or deadlines. Project rule — acceptance evidence: An incomplete multi-leg journey cannot receive a definitive eligibility result; editing the arrival delay changes the explainable advisory result without altering evidence.
$ open in your agent (prompt prefilled, you press enter), copy the prompt or copy or download AGENTS.md
prompt copied. want to know what dies next week?
new verdicts + top votes, weekly. free. one-click out.
AirHelp pricing
| plan | monthly | annual (per mo) | what you get |
|---|---|---|---|
| no win, no fee | — | — | $0 upfront; AirHelp keeps 35% of successfully recovered flight compensationThe 35% standard fee includes VAT; nothing is charged when compensation is not recovered. |
| airhelp+ single trip protection | — | — | 1 trip, including outbound, return, and any connecting flights€19.99 per trip, converted to about $23.06 at the ECB EUR/USD reference rate of 1.1534 published 2026-08-13. |
| airhelp+ lite | — | $2.88/user | 1 year of membership; the official fee list does not publish a numeric trip allowance€29.99 billed yearly, converted to about $34.59/year at ECB EUR/USD 1.1534. |
| airhelp+ smart / protect 3 trips | — | $3.84/user | 3 registered trips/year; €100 disruption payout, €200 missed-connection payout, and €100 baggage payout€39.99 billed yearly, converted to about $46.12/year at ECB EUR/USD 1.1534. |
| airhelp+ pro / protect 9 trips | — | $9.61/user | 9 registered trips/year; €100 disruption payout, €200 missed-connection payout, and €100 baggage payout€99.99 billed yearly, converted to about $115.33/year at ECB EUR/USD 1.1534. |
| airhelp+ usa comfort | — | $15/user | 6 registered trips/year; $200 fast disruption payout plus eligible compensation claims$179.99 billed yearly. |
| airhelp+ usa pro | — | $20.83/user | 9 registered trips/year; $200 fast disruption payout plus eligible compensation claims$249.99 billed yearly. |
free tierEligibility and information checks cost $0; an unsuccessful compensation claim costs $0; there is no free AirHelp+ membership.
billingsuccess-fee claim service, one-time single-trip protection, or annual AirHelp+ membership; no monthly AirHelp+ plan
hidden costsSuccessful claims lose 35%; legal action adds another 15% (up to 50% total, used in about 3% of cases). Goodwill claims cost $29.99 unless recovery is below $30 or 3,000 loyalty points. Membership benefits may require registration at least 48 hours before departure; bank/FX fees can reduce payouts.
pricing sources checked 2026-08-14 · pricing source ↗
Questions about AirHelp
Can you build your own AirHelp with AI?
Partly. A useful personal organizer is buildable, but AirHelp is more than the visible intake form. A local app can assess EC261 and UK261 eligibility, organize evidence, draft letters, and track deadlines. It cannot responsibly reproduce AirHelp's managed airline correspondence, cross-jurisdictional legal judgment, funded court action, and professional accountability in one sitting. This is a credible personal substitute for straightforward self-service claims, not a full replacement.
What does the AirHelp build prompt cover?
The prompt starts with this scope: Organize a flight disruption case, record the route and known facts, show a possible compensation tier with unresolved questions, and produce an editable claim-letter draft. Keep official-source links and user-entered escalation reminders with the case. Full-product capabilities excluded from the comparison include: AirHelp staff handling airline correspondence and negotiation; case-specific legal judgment across jurisdictions; lawyer access and funded legal action under a no-win, no-fee model. Follow the implementation plan and its prerequisites before expanding the build.
How do I use the prompt, AGENTS.md and agent skills?
Start with the AirHelp prerequisites and stack, then copy the prompt into your coding agent. Save the project rules as AGENTS.md in the project root. Linked skills are optional packages or source instructions for specific tasks; review their current contents and install only those matching the chosen stack. A skill does not supply API credentials or verify the finished app.
How long will this AirHelp project take?
The catalogue estimate is weekend to multi-day for the limited scope. Setup, integration approvals, debugging, deployment and ongoing maintenance can add time. This is an estimate, not a delivery guarantee.
What would I give up by replacing AirHelp?
AirHelp staff handling airline correspondence and negotiation; case-specific legal judgment across jurisdictions; lawyer access and funded legal action under a no-win, no-fee model; commercial flight, weather, and disruption data used to validate claims; professional support and accountability when a claim becomes contested. People pay AirHelp to transfer the work, uncertainty, follow-up, and legal escalation to a specialist on a no-win, no-fee basis. A local tool can organize a straightforward self-service claim, but it does not negotiate with the airline, fund litigation, or take professional responsibility for a contested case.
What can I use instead of building AirHelp?
The prior-art section lists ClaimSolo as starting points. Review their current scope, license and maintenance before adopting one.