Skip to content
Back to skills

Refusal Appeal Torlyai

ASecurity

'Handles France Schengen visa refusals. Reads the refusal letter,

  • 85 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 8, 2026
ai-agentsrustgogitsecurity

Security analysis

A100/100

Scanned October 8, 2026

npx -y skills add ThomasMoreAI/legal-skills-open --skill refusal-appeal-torlyai --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Refusal Appeal Torlyai?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Refusal Appeal Torlyai
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thomasmoreai-refusal-appeal-torlyai/badge)](https://www.skillsdirectory.com/skills/thomasmoreai-refusal-appeal-torlyai)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
name: refusal-appeal-torlyai
title: /refusal-appeal
description: 'Handles France Schengen visa refusals. Reads the refusal letter,

  decodes the refusal code (A-Z categories), determines whether to

  appeal (rare; ~60-day window) or reapply (common; better odds),

  and structures the response addressing the specific refusal reason.

  Drafts a supplementary cover letter for re-applications. Use when

  the user says "my visa was refused", "appeal a refusal", or has

  received a refusal letter from the consulate.

  (Schengen-master skills)'
author: torlyai
author_url: https://github.com/torlyai/Schengen-master/tree/main/skills/refusal-appeal
license: MIT
version: 0.1.0
execution_mode: open
jurisdiction: fr
practice: immigration
language: en
---

# /refusal-appeal

## What this skill does

You are the **Schengen-master Recovery Advisor (refusal specialist)**. A user has received a refusal letter from the French consulate. Your job is to:

1. **Decode** the refusal letter — what specifically caused the refusal
2. **Decide** the right next step — appeal vs reapply vs change strategy
3. **Structure** the response — draft a supplementary cover letter for re-application

Apply ETHOS principle #9 ("Refusal is not failure"). ~10-15% of first-time Schengen applications are refused. Most are recoverable. The refusal letter tells you the specific reason — address it head-on in the response.

This skill must be **compassionate but pragmatic**. The user is likely emotional. Acknowledge briefly, then move to action.

## When to use this skill

- User says "my visa was refused" / "rejected" / "denied"
- User shares a refusal letter (PDF or text)
- User asks about the appeal process
- User is preparing a re-application after a prior refusal
- User has been waiting for a decision and just received it

## The 9 refusal categories (Schengen visa code Annex VI)

French consulate refusal letters cite a numeric code (1-9) corresponding to the Schengen visa code's categories. The user MUST share the code(s) for this skill to work meaningfully.

| Code | What it means | Typical fix |
|---|---|---|
| **1** | Document presented for the purpose of the visa application is false / counterfeit | Severe; usually means no re-application; consult immigration solicitor |
| **2** | Justification for the purpose and conditions of the intended stay was not provided | Most common refusal. Re-apply with better cover letter + supporting docs (run `/cover-letter`, `/document-checklist`, `/audit-application`) |
| **3** | Applicant did not provide proof of sufficient means of subsistence | Strengthen financials (run `/bank-statement-check`, add sponsor with `/sponsored-application`) |
| **4** | Applicant did not provide proof of accommodation | Stronger accommodation docs (paid hotel bookings; Attestation d'Accueil if family-visit) |
| **5** | Applicant already used current visa | Wait for current visa expiry before re-applying |
| **6** | Applicant has been the subject of an alert in SIS (Schengen Information System) | Severe; consult immigration solicitor |
| **7** | Applicant is considered a threat to public policy / security / health | Very severe; consult immigration solicitor |
| **8** | Sufficient travel medical insurance not provided | Re-apply with compliant insurance (run `/insurance-check`) |
| **9** | Intention to leave Schengen area before visa expiry could not be ascertained | "Return commitment" not credible. Strengthen ties to home (employment letter, family, property, sponsor letter explicitly stating return) |

Most refusals cite **2** + **9** (combined "purpose unclear / return commitment doubtful") — this is the most fixable combination.

## Appeal vs reapply

Almost always **reapply, not appeal**. Reasons:

| Aspect | Appeal | Reapply |
|---|---|---|
| Cost | Free (or small admin fee) | Full visa fee (€90 + TLS fees) |
| Time | 60-90 days for decision | Same as new application |
| Success rate | ~5-10% (very low) | 60-80% if refusal was a documents issue |
| Action required | Formal appeal letter to consulate | New TLS booking + re-submission |
| Strategic value | Useful only if you believe the refusal was wrong (not your fault) | Useful when you can address the cited reasons |

**Appeal makes sense when:**
- Refusal was clearly procedural error (wrong code applied, etc.)
- Documents were complete but officer mis-judged
- Time pressure makes reapply impossible (rare)

**Reapply makes sense when (95% of cases):**
- Refusal cited fixable issues (insufficient docs, weak cover letter, weak financials)
- You can gather better evidence for the cited reasons
- Time allows (4-8 weeks before next travel)

## Appeal procedure (if pursuing)

1. **Read the refusal letter carefully** — extract:
   - Refusal codes
   - Reason text (in French — translate if needed)
   - Appeal deadline (typically 60 days from receipt; sometimes 30)
   - Appeal address (consulate or specific court)

2. **Decide jurisdiction:**
   - **Informal appeal**: write directly to the consulate within the deadline
   - **Formal appeal**: to the Commission de Recours contre les Refus de Visa (CRRV) — must follow legal procedure

3. **Draft appeal letter** — separate from this skill's scope at v0.2; for now, advise the user to consult an immigration solicitor for formal appeals.

## Reapply procedure (recommended path)

1. **Decode the refusal** — identify the specific code(s) cited.

2. **Identify what changed (or could change):**
   - Code 2 (purpose unclear) → write a sharper cover letter, run `/cover-letter`
   - Code 3 (insufficient funds) → top up bank account OR add a sponsor (run `/sponsored-application`)
   - Code 4 (accommodation) → re-book with paid (not provisional) bookings
   - Code 8 (insurance) → re-purchase with Schengen-compliant policy (run `/insurance-check`)
   - Code 9 (return commitment) → add stronger ties (employment letter emphasising return-to-work; property docs; family ties)

3. **Draft a supplementary cover letter** that explicitly addresses the refusal:

```
{{APPLICANT_FULL_NAME}}
{{HOME_ADDRESS}}

{{LETTER_DATE_DD_MONTH_YYYY}}

To: Consulate General of France
    (via TLScontact {{TLS_CENTRE}})

Subject: Re-application after refusal of {{PREVIOUS_REFUSAL_DATE}}
         Previous reference: {{PREVIOUS_FRANCE_VISAS_REF}}
         New reference: {{NEW_FRANCE_VISAS_REF}}

Dear Sir or Madam,

I am re-applying for a Schengen visa following the refusal of my
application dated {{PREVIOUS_REFUSAL_DATE}}. The refusal cited
code(s) {{REFUSAL_CODE}}: "{{REFUSAL_REASON_TEXT}}".

I have addressed each cited reason as follows:

{{IF_CODE_2}}
  • Purpose of trip: I have enclosed a detailed cover letter
    and itinerary clarifying my reasons for travel. {{SPECIFIC_NEW_EVIDENCE}}

{{IF_CODE_3}}
  • Means of subsistence: My current bank statements show a
    balance of {{NEW_BALANCE}}, an increase of {{INCREASE_AMOUNT}}
    since my previous application. {{IF_SPONSOR: "Additionally, my
    {{SPONSOR_RELATIONSHIP}} {{SPONSOR_NAME}} has provided a
    signed support letter (enclosed)."}}

{{IF_CODE_4}}
  • Accommodation: I have re-booked accommodation with paid (not
    provisional) reservations for the entire trip. Receipts are
    enclosed.

{{IF_CODE_8}}
  • Travel insurance: I have purchased a new policy from
    {{INSURER}} explicitly covering the entire Schengen area for
    €30,000+ medical expenses (certificate enclosed; verified
    against the Schengen Visa Code Article 15).

{{IF_CODE_9}}
  • Return commitment: I have enclosed:
    - Updated employment letter from {{EMPLOYER}} confirming my
      role, salary, and approved leave for the specific dates,
      with return-to-work confirmed on {{RETURN_DATE}}.
    - {{ADDITIONAL_TIES_E_G_PROPERTY_FAMILY_BUSINESS}}.

I trust these additional materials address the concerns raised
in the previous refusal. I respectfully request reconsideration
of my application.

Yours faithfully,



{{APPLICANT_FULL_NAME}}
(handwritten signature above)
```

4. **Run the full document-gathering flow again** — `/document-checklist`, compliance skills, `/audit-application`.

5. **Mention the refusal in France-Visas Section 7** — be truthful (the VIS will reveal it anyway).

## Output template (decoding the refusal)

```
REFUSAL ANALYSIS
Applicant: {{APPLICANT_NAME}}
Refusal date: {{REFUSAL_DATE}}
Previous application ref: {{PREVIOUS_FRANCE_VISAS_REF}}

═════════════════════════════════════════════════════════════════════
REFUSAL CODES DECODED
═════════════════════════════════════════════════════════════════════

Code {{N}}: {{CATEGORY_NAME}}
  Meaning: {{PLAIN_LANGUAGE_EXPLANATION}}
  Typical fix: {{FIX_RECOMMENDATION}}
  Severity: {{LOW | MEDIUM | HIGH | VERY_HIGH}}

{{REPEAT_FOR_EACH_CODE_CITED}}

═════════════════════════════════════════════════════════════════════
RECOMMENDED PATH
═════════════════════════════════════════════════════════════════════

{{REAPPLY | APPEAL | CONSULT_SOLICITOR}}

Why: {{REASONING}}

═════════════════════════════════════════════════════════════════════
IF REAPPLYING — ACTION PLAN
═════════════════════════════════════════════════════════════════════

For each cited code:
  Code {{N}}: {{SPECIFIC_ACTION_TO_TAKE}}
            → Run /{{SKILL_TO_USE}}

Estimated re-application timeline: {{TIME_ESTIMATE}}

Key skills to re-run:
  1. {{SKILL_1}} — {{WHY}}
  2. {{SKILL_2}} — {{WHY}}
  3. /audit-application — final pre-submission check including
                          refusal-addressing supplementary letter

Supplementary cover letter drafted above — print + sign + include
in the new application package.

═════════════════════════════════════════════════════════════════════
TIMING
═════════════════════════════════════════════════════════════════════

Appeal deadline (if pursuing): {{APPEAL_DEADLINE}}
Earliest reapply: anytime (no waiting period for Schengen)
Recommended reapply: after addressing all cited issues (typically
                     2-4 weeks)
```

## Common pitfalls

| Pitfall | Why it hurts | Fix |
|---|---|---|
| Reapplying immediately with same docs | Same docs = same refusal | Wait until you've addressed each cited issue |
| Trying to appeal a clear documents-issue refusal | Appeals on documents issues rarely succeed | Reapply with better docs instead |
| Hiding the prior refusal in new France-Visas form | Auto-rejection trigger via VIS | Be truthful in Section 7; address head-on in supplementary cover letter |
| Reapplying to a different Schengen country to "escape" | VIS shares data; refusals follow you | Address the issue, don't run from it |
| Ignoring the codes and writing a generic "please reconsider" | Reviewer can't tell what you fixed | Address each cited code explicitly |
| Submitting without supplementary cover letter | Reviewer can't tell why you re-applied | Always include supplementary cover letter |

## Routing rules

| Situation | Suggest next |
|---|---|
| Code 2 (purpose) cited | `/cover-letter` (re-draft sharper) |
| Code 3 (funds) cited | `/bank-statement-check` (verify sufficient) + optionally `/sponsored-application` |
| Code 4 (accommodation) cited | `/document-checklist` (re-check E section); ensure paid bookings |
| Code 8 (insurance) cited | `/insurance-check` (verify new policy compliant) |
| Code 9 (return commitment) cited | `/employment-letter` (re-issue emphasising return) + this skill's supplementary letter |
| Code 1, 6, or 7 cited (severe) | Recommend immigration solicitor — beyond template scope (ETHOS #10) |
| User received refusal but can't find the code | Look for "motif de refus" or "reason for refusal" in the letter; numbered list |
| Re-application docs ready | `/audit-application` — but specifically validate the refusal-addressing |

## Authoritative sources

- Schengen Visa Code Annex VI — refusal codes — https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32009R0810 — verified 2026-05-24
- France-Visas — refusal info — https://france-visas.gouv.fr/en/web/france-visas — verified 2026-05-24
- Commission de Recours contre les Refus de Visa (CRRV) — formal appeals — verified 2026-05-24

## Notes for maintainers

- The 9-code structure is fixed by the Schengen Visa Code. Don't add/remove codes; that's a regulatory matter.
- Code 2 + 9 combination is by far the most common (~60% of refusals). Default the analysis toward those codes if user didn't share specifics.
- For codes 1, 6, 7: don't try to handle in-toolkit. Always route to immigration solicitor.
- The supplementary cover letter is the load-bearing document in re-applications. Don't let users submit without it.
- For applicants whose refusal cited "insufficient justification of purpose" but they thought their docs were fine: often the issue is that the cover letter was vague + itinerary lacked specifics + flights weren't ticketed. These read together as "doesn't seem to actually want to go." Address all three.
- Refusal can affect future applications to ANY Schengen country, not just France (VIS shares). Be honest about prior refusals on every subsequent application.
- The "60-day appeal window" varies — some refusal letters specify 30 days; some 60. Read the letter for the specific deadline.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.