Last reviewed: 2026-04-21.
This page explains what the calculator does, what it doesn't, and how to verify any number it gives you.
On this page
- The pension formula in one paragraph
- Part 1 — Fixed increases (MF)
- Part 2 — Proportional increases (MP)
- Why retiring one year later sometimes gives a slightly smaller pension
- Part 3 — Minimum pension
- Part 3b — The Art 218 « pension maximum » cap
- What the calculator's breakdown shows
- Part 3b — How career-input modifiers work
- Part 3c — Voluntary contributions (assurance continuée, Art. 173)
- Part 3d — Break-even age
- Part 3e — Pension d'invalidité (CSS Livre III)
- Part 3f — Pension de survie (CSS Livre III, Chapter 5)
- Part 4 — Cross-border careers under EU Reg 883/2004
- Part 5 — Multi-treaty cross-border calculation
- EU Regulation 883/2004
- U.S.-Luxembourg Bilateral
- Canada-Luxembourg Bilateral
- Quebec-Luxembourg Bilateral
- India-Luxembourg Bilateral
- Japan-Luxembourg Bilateral
- Korea-Luxembourg Bilateral
- Brazil-Luxembourg Bilateral
- Chile-Luxembourg Bilateral
- Argentina-Luxembourg Bilateral
- Uruguay-Luxembourg Bilateral
- Albania-Luxembourg Bilateral
- Bosnia and Herzegovina-Luxembourg Bilateral
- Montenegro-Luxembourg Bilateral
- North Macedonia-Luxembourg Bilateral
- Serbia-Luxembourg Bilateral
- Moldova-Luxembourg Bilateral
- Morocco-Luxembourg Bilateral
- Tunisia-Luxembourg Bilateral
- Cape Verde-Luxembourg Bilateral
- Turkey-Luxembourg Bilateral
- Philippines-Luxembourg Bilateral
- Part 6 — Glossary
- A note on the replacement ratio
- Salary inputs
- Part 7 — What the 2026 pension reform changed
- Part 8 — What happens for retirement years in the future
- Part 9 — What the calculator assumes
- Verifying a MyPensionPlan.lu number
- Sources and further reading
- This is a calculation tool, not financial advice
The pension formula in one paragraph
A Luxembourg old-age pension has two parts. The fixed increases (majorations forfaitaires, or MF) reward the length of your career — they grow with the number of years you've been insured, regardless of what you earned. The proportional increases (majorations proportionnelles, or MP) reward the money you earned — they grow with your total career salaries, indexed for inflation and adjusted for general wage growth. Your total pension is the sum of both parts, plus a minimum-pension top-up if the total falls below a legal floor.
That's the whole structure. Everything else is detail on how each part is calculated.
Part 1 — Fixed increases (MF)
The fixed increases are calculated from two things: your number of insurance years, and a per-year rate set by regulation according to the 2012 reform's phase-in schedule.
For a pension starting in 2026, the MF rate is 25.075% of the reference amount per full career (40 years). This rate rises each year by approximately 0.113 percentage points, reaching 28.000% for pensions starting in 2052 or later. The gradual increase reflects the long-term rebalancing built into the 2013 reform — over time, MF grows relative to MP.
A partial career gets a pro-rated share. Twenty years of insurance earns half the MF entitlement; thirty years earns three-quarters.
The "reference amount" (montant de référence) is €2,085 at index 100, base year 1984. It gets multiplied by the current cost-of-living index and the annual revaluation factor to produce the MF amount that actually appears in your pension.
Insurance years combine obligatory insurance (employment, self-employment) with the complementary periods the calculator accepts as inputs: study years (up to 9, under Art. 174 as amended for 2026), baby years (24 or 48 months per child under Art. 171 §7 or Art. 172 §4, regime inferred from the child's birth year and your career start year), and declared career gaps. Residual credits outside the current input set — military service, maternity leave as a separable credit, assurance continuée top-ups, and rachat purchases — typically increase MF and may help cross the MP threshold when claimed.
Based on Code de la Sécurité Sociale Art. 214 and the reform law of 21 December 2012.
Part 2 — Proportional increases (MP)
This is where the calculation gets more interesting — and where most of the complexity lives.
A note on 1984. You'll see 1984 referenced repeatedly below. It is Luxembourg's année de base — the legal base year set by the pension formula (Code de la Sécurité Sociale Art. 220). It is not asking for your 1984 salary, your retirement year, or any personal date. You enter your salary in today's euros; the formula converts it internally, indexing it to 1984-equivalent terms to apply the rates, then multiplying by the current cost-of-living index and revaluation factor to bring the result back to today's purchasing power. The 1984 reference is mechanical, not personal.
Step 1: Convert each year's salary to a comparable baseline
You can't just sum your career salaries. A salary earned in 1995 is worth more, in real terms, than the same number earned in 2024. The formula adjusts for this in two ways:
Index adjustment. Luxembourg has an échelle mobile des salaires system, which ties wages to the cost-of-living index (indice des prix à la consommation nationale, or IPCN). The pension formula divides each historical salary by the average IPCN index of the year it was earned, multiplied by 100. This produces a value "at index 100" — meaning, expressed relative to the 1984 base of the indexation series.
Revaluation factor. A separate annual facteur de revalorisation then adjusts these index-100 values to reflect general real wage growth in Luxembourg. For pensions starting in 2026, the factor used is 1.570, set by grand-ducal regulation based on 2022 economic data (the "N-4" rule introduced in the 2013 reform).
The combined effect: each year's salary is expressed in a consistent, comparable unit regardless of when you earned it.
Step 2: Sum the career
Once every year's salary is converted, they're summed to produce a total career earnings figure at index 100. This is the raw input to the MP calculation.
Step 3: Apply the MP rate
For a pension starting in 2026, the base MP rate is 1.763%. Applied to your total career earnings, this produces the base MP component of your pension.
Step 4: Add the échelonnement bonus (if eligible)
Here's a feature of the Luxembourg system not all of its peers have: an explicit reward for retiring later with more insurance.
The 2013 reform introduced a threshold based on the sum of your age at retirement and your years of insurance. For pensions starting in 2026, the threshold is 95. This threshold rises over time — it reaches 100 for pensions starting in 2052. If your age plus insurance years exceeds the threshold, each additional unit adds a small percentage-point bonus to the MP rate. For 2026, the bonus is +0.016 percentage points per unit over threshold.
A worked example. If you retire at 63 with 36 years of insurance, your sum is 99. That's 4 units over the 95 threshold. Your effective MP rate becomes 1.763% + (4 × 0.016%) = 1.827%. Applied to a career total of, say, €5,000,000 indexed euros, that's €3,200 extra per year of pension.
This is why the "Threshold excess" line in the calculator breakdown matters. It's the single biggest lever most users have: working slightly longer can raise your pension meaningfully. The effective MP rate is capped at 2.05%.
Based on Code de la Sécurité Sociale Art. 214 and Art. 220, and annual grand-ducal regulations setting index and revaluation values.
Why retiring one year later sometimes gives a slightly smaller pension
The proportional-increase (MP) part of the Luxembourg pension formula depends on two things: your age at retirement, and a threshold called the "seuil" defined in Article 220 of the Code de la Sécurité Sociale. As part of the 2012 reform's phase-in, the seuil increments by 1 each year — from 93 in 2013 to roughly 100 by 2052.
When the year you retire falls on a seuil step-up, the +1 from being one year older is exactly cancelled by the +1 in the threshold. The result is that, for a fixed career, retiring one year later through a step-up boundary can produce a slightly smaller pension than retiring just before. This is a direct, lawful consequence of how the law phases the seuil in — the calculator's numbers match the design.
A user with a 42-year career retiring in 2029 vs 2030 sees the seuil increment from 95 to 96. The projected monthly gross pension can drop by about €15-25 across the boundary, even though the user is a year older. The Compare scenarios panel will show this when your retirement-age range spans a seuil step-up year.
Explanation based on the Art. 220 MP formula structure and parameter volatility over the 2025–2030 period documented in Pension.lu engine PR #75 and the cross-treaty calculator audit.
Part 3 — Minimum pension
Luxembourg guarantees a minimum pension for long careers. If you have at least 40 years of insurance, you're entitled to a legal floor of €2,376.62 gross per month as of 1 January 2026. If your calculated MF + MP falls below this floor, the difference is added as a top-up. Partial careers receive a pro-rated minimum (one-fortieth per year of insurance).
The calculator shows this as a separate line in the breakdown when it applies (top-up > €0). For most users with substantial Luxembourg careers, the MP component dominates and no top-up is needed.
Luxembourg also caps the maximum pension at 5/6 of five times the reference amount at index 100, adjusted for the current index and revaluation factor — roughly €11,000–€12,000 gross per month in 2026 terms.
Based on Code de la Sécurité Sociale Art. 218.
Part 3b — The Art 218 « pension maximum » cap
Article 218 of the Code de la Sécurité Sociale caps the gross old-age pension at roughly five times the social-security reference amount, indexed annually. For 2025 parameters, this works out to about €11,000 per month for a class-1 single contributor. Higher salaries can produce uncapped pensions above this ceiling; CNAP applies the cap before the pension is paid out.
The calculator surfaces the cap two ways. When your projected pension lands at the ceiling, the headline figure reflects the capped amount and the sensitivity tables are replaced with a short note explaining why every variation in the typical range also exceeds the cap. To explore how your pension responds to input changes, lower the salary input or use the Compare scenarios tool with a wider input range.
Based on Code de la Sécurité Sociale Art. 218 (« pension maximum »); engine implementation in pension_lu.pension.legal_pension_cap_monthly_eur.
What the calculator's breakdown shows
When the calculator returns a number, it shows how that number was built. The breakdown panel lists each component on its own line — not one combined figure.
- Fixed increases (MF) — the career-length component, in euros per month.
- Proportional increases (MP) — the earnings-based component, in euros per month.
- Effective MP rate — the base MP rate with any threshold bonus applied, expressed as a percentage.
- Threshold excess — the number of units by which your age plus insurance years exceeds the CNAP threshold for your retirement year.
- Minimum pension top-up — shown as a separate line when MF + MP falls below the guaranteed floor, and zero otherwise.
The revaluation factor, the cost-of-living index, and the reference amount are applied inside the engine and are listed on this page under their own sections — they are the same for every user in a given retirement year, so they sit in the methodology rather than the per-user breakdown.
Part 3b — How career-input modifiers work
Most users' careers aren't 40 continuous years of salaried employment. Three common real-world modifiers — baby years, study years, and career gaps — are captured in the calculator's optional career-detail sections and handled as follows.
Baby years (années bébé)
Luxembourg law recognises baby-year credit through two distinct tracks. Under CSS Art. 171 §7, parents who devoted themselves to raising a child under age 4 in Luxembourg can claim 24 months per child of effective obligatory insurance (48 months if the child has a disability or there were ≥2 other minor children in the household at birth), provided the parent had at least 12 months of Art. 171 insurance in the 36-month reference window preceding birth or adoption. The credit requires no contributions. Under CSS Art. 172 §4, a parent who raised a child under age 6 in Luxembourg receives complementary-period credit, subject to an aggregate-floor rule of 8 years for two children or 10 years for three.
The two tracks have different effects on the pension. Art. 171 §7 months count toward the MF denominator, the MP threshold (age + Art. 171 years), and stage eligibility. But under Art. 214 of the CSS — which defines the MP base as the sum of revenus soumis à retenue pour pension — §7 months contribute zero to the MP base: no contributions were withheld on those months, so no earnings enter the sum. Art. 172 §4 months count only for MF and the stage, not for MP and not for the threshold. The per-child table in Detailed mode captures this split: each entry is classified into §7 months (added to obligatory insurance) and any §4 complementary years are supplied through the salary-history complementary path.
Study years (périodes d'études)
Up to 9 years of higher education or unpaid professional training can count as complementary insurance periods, provided they occurred after age 18 completed. This is CSS Art. 172 §2 as amended by the 2026 reform: Law 8634, published in Mémorial A-2025-606, removed the pre-reform age-27 upper cap while keeping the age-18 floor and the 9-year total. Study years count toward the MF denominator and the qualifying stage, but not toward the MP base (no earnings associated) and not toward the MP threshold. Paid apprenticeships are excluded from §2 — they appear in the regular salary history under Art. 171 §5.
Career gaps
Months during which the user was not insured in Luxembourg under any regime — not Art. 171 (obligatoire), not Art. 173 (assurance continuée), not Art. 174 (achat rétroactif) — count as career gaps for this tool. Gap months do not contribute to MF, MP, or the stage.
When a user declares a gap period, the engine reduces the insured-year count by the gap months and proportionally reduces the career-earnings sum by the same fraction (gap months ÷ base-career months). The proportional reduction applies identically whether the user supplied a pre-computed total (Mode A) or the calculator is projecting from a single current salary (Mode B).
Based on Code de la Sécurité Sociale Articles 171, 172, 173, 174, and 214; the Règlement grand-ducal du 5 mai 1999; and the Loi du 19 décembre 2025 (Mémorial A-2025-606, "Law 8634") for the post-reform Art. 172 §2 text.
Part 3c — Voluntary contributions (assurance continuée, Art. 173)
Some users continue paying CNAP contributions voluntarily after stopping insured activity in Luxembourg — for example a former Luxembourg employee studying or living temporarily in another country who wants to keep their LU pension entitlement intact. This is assurance continuée, governed by Article 173 of the Code de la Sécurité Sociale. The calculator models it as a third career-period type alongside employment and gaps.
How the calculation works
The contribution rate is 24% combined — both the 8% employee share and the 16% employer share are paid by the contributor. The reference salary used to compute the contribution must lie between the social minimum wage (SSM) and 5×SSM. The contributor picks any monthly amount in that band, and the engine derives the implied reference salary as monthly_contribution ÷ 0.24.
Once accepted, voluntary months count as ordinary insured months at the chosen reference salary. They feed into MF (career length), MP (career earnings), the 120-month qualifying threshold (Art. 184), and the 480-month maximum the same way employment months do. Index revaluation under Art. 214 applies identically. There is no special branch in the pension formula — voluntary periods are functionally (months × reference_salary) at the chosen rate.
What the calculator does and doesn't do
The calculator surfaces the SSM and 5×SSM bounds at runtime, validates that your monthly contribution falls inside them, and prevents voluntary periods from overlapping paid Luxembourg employment in the same month. It also warns when a voluntary period starts more than 6 months after the end of your last insured Luxembourg period — the application window CNAP usually applies — but it does not block the calculation in that case. Eligibility is CNAP's call, not the calculator's.
The calculator models the period as if accepted. It does not validate your actual CNAP affiliation status or replace any official CNAP estimate.
What's out of scope
- Art. 174 (rachat de périodes / retroactive buyback) — same UI pattern but different validation logic. A future iteration of this tool.
- Art. 173bis (assurance volontaire) — narrower eligibility, separate spec.
- France-Luxembourg comparison — "would voluntary contribution to the French régime générale be a better deal?" requires a French pension model the engine doesn't have.
- Net-of-tax treatment of contributions — voluntary contributions are deductible up to a cap; the calculator's net-of-tax module does not reflect that yet.
Cross-border note. EU Regulation 883/2004 generally requires a worker to be insured in only one Member State for compulsory affiliation, but voluntary affiliation can layer in some cases. The calculator does not enforce this — it is the user's responsibility, and ultimately CNAP's call, whether voluntary contributions are accepted while the user is also insured elsewhere.
Based on Code de la Sécurité Sociale Article 173; the rate, SSM band, and 6-month application window are loaded from the engine's voluntary_contributions.yaml parameter file at runtime.
Part 3d — Break-even age
Break-even age answers a question every contributor has but no Luxembourg pension product currently does: at what age does the cumulative pension you draw exceed the cumulative contributions paid in? The calculator surfaces this number alongside the headline pension figures so you can reason about what your contributions actually buy you. It is not investment advice and not a comparison with alternative uses of the money — it is an honest piece of context.
Four locked-in decisions
Whose contributions count. The headline figure uses the total 24% contribution rate (8% employee + 16% employer). The employer's share is economically the contributor's foregone wages — showing only the employee 8% understates what the contributor "paid" in any honest economic framing. The employee-only 8% break-even age is exposed as a secondary figure for users who want it. For voluntary contributions (Art. 173), the contributor pays the full 24% out of pocket, so the two figures coincide.
Indexed vs nominal. The headline figure is indexed (real-terms): contributions paid in 2010 are not the same euros as a pension drawn in 2055, so we revalue the contribution stream to retirement-year terms using the same Art. 214 / 220 / 220bis index series the pension calc uses. The nominal (face-value) figure is exposed as a secondary number — it is what you would compute on the back of an envelope, and we show it because users will ask. NPV with a discount rate is not exposed: picking a rate is an investment-advice decision the calculator cannot defend.
Gross or net. Break-even ships gross today; net of tax will be added once the net-of-tax module covers contribution deductibility and the tax treatment of pension income. Until then, every break-even number on this page carries an explicit "before tax" caveat.
What the figure excludes. Break-even compares contributions paid to old-age pension drawn. It excludes invalidity-insurance value, survivor / orphan pension value, post-retirement réajustement (only relevant to the nominal variant — indexed already nets it out), and the longevity-insurance value of a pension that pays for life. These omissions matter: as the engine adds invalidity and survivor modules, the break-even age for users who claim those benefits will fall, not rise.
How break-even refreshes as future modules ship
Break-even is returned as a list of named scenarios, each with two metric variants (indexed / nominal) and two contribution variants (24% / 8%). v1 ships with one or two scenarios depending on inputs: old_age_full_career always, plus voluntary_only when at least one Art. 173 voluntary period is declared (it answers the marginal question "should I keep paying voluntarily?" honestly). Each future pension-type spec — invalidity, survivor, civil-servant régime, réajustement — adds its own scenario to the list per the extension contract in the spec. The result panel and PDF iterate over the list, so adding a scenario does not require a UI change.
Based on Code de la Sécurité Sociale Articles 214 and 220bis (indexation series), and the engine's break_even.yaml parameter file (max-solve age, post-retirement indexation assumption). Computed as a wrapper around the existing pension calc — the underlying pension number is unchanged.
Part 3e — Pension d'invalidité (CSS Livre III)
Pension d'invalidité is the CNAP benefit paid to insured workers whose earning capacity has been permanently reduced by at least two-thirds, certified by the Contrôle médical de la sécurité sociale (CMSS) per CSS Art. 187. It is paid until the insured person reaches statutory retirement age, at which point it is automatically replaced by an old-age pension of the same amount (CSS Art. 192). The calculator models the cash benefit only — eligibility and certification are CNAP / CMSS decisions the calculator does not pre-empt.
The pension is built from four components, each in current-monthly EUR. The two ordinary components reward the actual career: MF_ordinary is the fixed increase (majoration forfaitaire) on years of insurance accumulated up to the onset date, and MP_ordinary is the proportional increase (majoration proportionnelle) on the corresponding career earnings. Both follow the same rate schedules as the old-age pension under CSS Art. 214.
The two spéciales components recognise that an insured person disabled mid-career would otherwise have continued contributing until retirement. Under CSS Art. 215, the engine pads the insured period with anticipated insurance years in two stages: from the onset date to age 55 (which feeds into MP_spéciales) and from the onset date to age 65 (which feeds into MF_spéciales). When the onset occurs after age 35 and the insured had less-than-full coverage between age 25 and onset, MF_spéciales is reduced by a density-of-career haircut per CSS Art. 216 second paragraph (insured years before onset ÷ years between age 25 and onset). MP_spéciales is not haircut.
The four components sum to the monthly pension, then a minimum pension floor and a legal cap are applied per CSS Art. 223. At the user's statutory retirement age (default 65, range 60–67), CSS Art. 192 automatically converts the pension d'invalidité into a pension de vieillesse — no formal decision is required and the modal user sees no change in amount. The result panel surfaces this conversion explicitly so users do not assume the benefit ends at retirement age.
Worked example — CNAP brochure Example 2
The CNAP Brochure Pension d'invalidité (May 2025) page 9 walks through Example 2: an insured worker disabled at age 49 with 12 years of effective insurance plus 6 years of complementary periods (S = €24,000 of revalued career earnings under n.i. 100, base 1984). The brochure derives a monthly pension of €1,763.17 from the four-component formula — and the live engine endpoint reproduces it to the cent. This calculator's smoke test (DOB 1996, onset 2026, S = €24,000 → €2,872.70) verifies the same round-trip end-to-end. Source: CNAP brochure page 9.
Sources
Code de la Sécurité Sociale Livre III, articles 186, 187, 188, 189, 190, 191, 192, 193, 194 (eligibility, conversion); 215, 216 (anticipated stages, density haircut); 221, 223 (minimum floor, legal cap); 226 (annual parameters). CNAP guidance: Brochure Pension d'invalidité, mai 2025. Article extracts archived under research/cnap/css-livre-iii/ in the engine repo.
Part 3f — Pension de survie (CSS Livre III, Chapter 5)
Pension de survie is the CNAP benefit paid to the surviving spouse or registered partner of a deceased insured worker, per CSS Art. 195. Unlike old-age and invalidity pensions, the survivor pension is derived — it does not stand on the survivor's own career. The engine first computes the deceased's pension exactly as it would have been paid, then applies the spouse reversion factors per CSS Art. 217: the fixed-increase components carry across at 100%, while the proportional-increase components carry across at three-quarters. The survivor pension can therefore look like roughly 80% of the deceased's pension when the deceased had a high MP share, or noticeably less when MP dominated the formula.
The spouse reversion factors follow a simple table the brochure publishes verbatim on page 8. For a deceased on old-age (vieillesse) or vieillesse anticipée: MF × 1, MP × 3/4 — the proportional component is the only one that gets the haircut. For a deceased on invalidity, the same logic applies twice: MF_ordinary × 1, MP_ordinary × 3/4, MF_spéciales × 1, MP_spéciales × 3/4. The fixed components reflect a per-year credit that the survivor inherits in full; the proportional components reflect indexed earnings, which the survivor inherits at three-quarters. Civil servants and statutory salaried regimes use a different table; the calculator targets the CNAP general régime only.
Two short-term adjustments shape the headline figure. The trimestre de faveur (months 1–3 after death) tops the survivor up to the deceased's full pension — a transitional support window. Steady-state survivor amount kicks in from month 4. Separately, the income concurrence reduction under CSS Art. 228 and 229 reduces the survivor pension when the survivor's own income (own salary, self-employment, or pension) exceeds a monthly threshold for the calculation year. The threshold is published in the annual CNAP parameters; case A (own pension) and case B (own professional income) follow different reduction formulas, with case B granting an immunised offset that scales with the survivor's baby-year credits and dependent orphans.
Cross-border survivors follow the same coordination rules as cross-border old-age pensions. Under EU Reg 883/2004, each member state pays its own portion of the survivor pension under its own rules; Luxembourg pays the higher of the autonomous LU-portion and the pro-rata theoretical-on-full-cross-border-career portion (Art. 52). When the deceased had a multi-country career, the calculator estimates the Luxembourg portion only — foreign authorities issue their own statements. Bilateral-treaty countries (US, Canada, India, Japan, Korea, Brazil, Quebec, etc.) coordinate per the convention's calculation article; v1 of the calculator surfaces the LU standalone amount with a cross-border notice, matching the framing used for old-age cross-border survivors.
Worked example — CNAP brochure spouse-of-invalidity Example 2
The CNAP Brochure Pension de survie (May 2025) page 10 walks through Example 2 for a survivor whose spouse was on invalidity at €3,754.74/month. The four invalidity components (MF_ordinary, MF_spéciales, MP_ordinary, MP_spéciales) get the spouse reversion factors of 1, 1, 3/4, 3/4 respectively. Summed, the survivor pension comes to €2,979.07/month — roughly 79.3% of the deceased's pension, reflecting the 25% haircut on the proportional half of the formula. Source: CNAP brochure page 10.
Sources
Code de la Sécurité Sociale Livre III, articles 195 (eligibility), 196 (registered partners), 197 (trimestre de faveur), 217 (reversion factors), 219 (multi-survivor concours), 223 (minimum floor and legal cap), 226 (annual parameters), 228 and 229 (income concurrence). CNAP guidance: Brochure Pension de survie, mai 2025. Article extracts archived under research/cnap/css-livre-iii/ in the engine repo.
Part 4 — Cross-border careers under EU Reg 883/2004
When part of your career was spent insured outside Luxembourg, CNAP does not pay you a pension on your Luxembourg months as if they stood alone. It applies EU Regulation 883/2004 (and its implementing Regulation 987/2009), which coordinates pensions across member states so that periods of insurance can be aggregated. The calculator applies the same coordination rules CNAP uses — LU portion only; each other country pays its own portion under its own rules.
Two eligibility gates must both be cleared for Luxembourg to pay anything. Art. 57(1) of Reg 883/2004 requires at least 12 months of LU insurance on its own — below that, LU does not pay, and your LU months are folded into the calculation of another member state per Art. 57(2). Separately, your aggregated insurance across all member states must reach the 120-month stage set by CSS Art. 184, using the aggregation rule of Reg 883/2004 Art. 6. If either gate fails, no LU pension is payable.
The dual calculation (Art. 52) and max(A, C)
When both gates are cleared, Art. 52(1) of Reg 883/2004 requires CNAP to compute the pension two ways and pay the higher. The autonomous amount (A) under Art. 52(1)(a) is the LU pension calculated on your LU periods and LU earnings alone, as if no other country were involved. The pro-rata amount (C) under Art. 52(1)(b) is built in two steps: first the theoretical amount that LU law would pay if your entire cross-border career had been insured in Luxembourg, then multiplied by the ratio of your LU insurance months to your total insurance months across all member states.
Under Art. 52(3), CNAP pays the higher of the amounts calculated in accordance with subparagraphs 1(a) and (b). This is the max(A, C) the result panel shows. Luxembourg is not listed in Annex VIII Part 1 of the regulation for old-age pensions under the general régime, so the Art. 52(4) waiver does not apply — the dual calculation is mandatory for every LU cross-border case, not optional.
Foreign-period earnings imputation (Art. 56(1)(c))
To compute the theoretical amount that feeds into C, LU law needs a figure for what you earned during the years you were insured abroad — years for which Luxembourg has no contribution record. Art. 56(1)(c) of Reg 883/2004 provides the rule: when a member state calculates on the basis of earnings, the competent institution uses, in order to determine the amount to be calculated in accordance with the periods of insurance and/or residence completed under the legislation of the other Member States, the same elements determined or recorded for the periods of insurance completed under the legislation it applies.
The simplest expression of "the same elements" is to scale your LU earnings uniformly to cover the foreign months. In practice the engine computes the theoretical total earnings as lu_sum_ni100 × (lu_months + foreign_months) / lu_months — i.e. the foreign months are imputed at the same average indexed earnings as your LU months. Any alternative — imputing LU minimum wage, or asking the user for decades of foreign salaries — would either bias the result or demand data the user cannot reliably supply.
Leaver workflow (three-regime routing)
If you plan to leave Luxembourg before retirement, the calculator's leaver toggle captures your Luxembourg career end date, a claim age (57, 60, or 65, subject to CSS Art 184's 480-month gate for the earlier ages), and your relocation country. The relocation country routes the output to one of three regimes.
EU/EEA/Switzerland/UK — the 883/2004 pro-rata calculation above applies. Luxembourg pays the higher of the autonomous and pro-rata amounts (Art. 52(3)).
Bilateral agreement country — the calculator shows the Luxembourg standalone pension plus a link to the specific treaty text. Full per-treaty totalisation is a later iteration of this tool.
No agreement country, or a destination not listed in the dropdown — the calculator shows the Luxembourg standalone pension plus a caveat that payment abroad may be restricted; users are directed to CNAP to confirm payability.
In all three cases, the engine applies claim-year parameters (Art 214 rates, annual parameters, revaluation factor) — not current-year parameters. Earnings are frozen at the career-end date and revalued forward.
Based on Council Regulation (EC) No 883/2004 Articles 6, 52(1), 52(3), 52(4), 56(1)(c), and 57(1); and Code de la Sécurité Sociale Art. 184 (aggregated-stage threshold). Annex VIII Part 1 of Reg 883/2004 checked for Luxembourg inclusion under the old-age régime général — none found.
Part 5 — Multi-treaty cross-border calculation
When part of your career was spent in a country that has its own bilateral social-security convention with Luxembourg — separate from EU coordination — CNAP does not pick one instrument and ignore the others. It runs the Luxembourg pension calculation under every applicable instrument and pays the highest result. CNAP states this directly on its Conventions internationales page: le calcul de la pension est effectué accord par accord
— the pension calculation is done agreement by agreement. The same applies when an EU career and a non-EU bilateral career run in parallel.
This is the principle of most favourable, supported by CJEU jurisprudence (Rönfeldt, Case C-227/89) and codified in Article 8 of EU Regulation 883/2004. The calculator implements it identically: compute_multi_path walks every coordination instrument that touches your career profile — EU 883/2004, the relevant bilateral convention(s), and where applicable the no-agreement fallback — and surfaces the path that produces the highest Luxembourg-side amount. The result panel shows every applicable path; the winning path is highlighted.
The four regime categories
Luxembourg's coordination architecture splits into four operational categories. Each treaty engine in the calculator declares which category it belongs to:
- EU coordination (883/2004) — Article 52 totalisation. One canonical algorithm, applied for any career touching the 31 EU/EEA/Switzerland/UK codes. Implemented and ±1% accurate against synthetic worked examples.
- Bilateral with totalisation — per-treaty rules that mirror the Article 52 structure (autonomous-or-better, pro-rata, treaty-specific imputation). 22 active conventions: Albania, Argentina, Bosnia and Herzegovina, Brazil, Canada, Cape Verde, Chile, India, Israel, Japan, Korea, Moldova, Montenegro, Morocco, North Macedonia, Philippines, Quebec, Serbia, Tunisia, Turkey, United States, Uruguay. All 21 modelled bilateral countries with totalisation are now backed by per-treaty engines; the 22-treaty rebuild closed with the Philippines-Luxembourg engine in T21.
- Bilateral without totalisation (postings only) — currently China only. The treaty governs equal treatment, posting/detachment certificates, and benefit export, but does not aggregate insurance periods toward Luxembourg's stage requirement for old-age pensions. The Luxembourg standalone amount applies on this path, with a callout that explains the treaty's actual scope.
- No agreement — no instrument in force. The Luxembourg standalone amount applies; payment of benefits into the destination country may be restricted under CSS Art. 90 and following. Confirm with CNAP before relocating.
Nationality restrictions (MA + TN + CV all confirmed restricted)
Per CNAP's published overview: Les conventions bilatérales sont applicables à toute personne sans distinction de nationalité, à l'exception des conventions avec le Brésil, le Cap-Vert, le Maroc et la Tunisie qui s'appliquent uniquement aux ressortissants des Parties contractantes ainsi qu'aux ressortissants de l'Union européenne
. The calculator captures your primary nationality at the top of the form and applies a two-step applies_to gate to any treaty engine flagged as nationality-restricted: nationality is checked first, then country presence; both must be satisfied for the treaty path to evaluate. If your nationality doesn't qualify, the path is silently absent from the result panel. If you hold multiple nationalities, the most favourable applies — re-run the calculator with each to compare.
Each country pays on its own schedule
Luxembourg pays its share of your pension when you meet Luxembourg's age and stage rules. Each other country pays its share when its own retirement-age conditions are met, which may differ from Luxembourg's. The figure on the result panel is the Luxembourg portion only, paid on the Luxembourg schedule. Foreign portions are calculated by the foreign pension authority under foreign rules; this calculator does not estimate them.
Pre-EU bilateral preservations (Rönfeldt jurisprudence)
Article 8(1) of Reg 883/2004 replaces pre-existing bilateral conventions between Member States, except for provisions explicitly listed in Annex II. We have reviewed Annex II and found that none of Luxembourg's preserved bilateral provisions affect the standard old-age pension calculation for any meaningful user population. The five LU-side preserved provisions cover BE-LU 1994 (frontier-worker healthcare, not pension), CZ-LU 2000 and LU-SK 2002 (political-refugee narrow-population reckoning), DE-LU 1959 (insurance periods completed September 1940 – June 1946; the youngest possible affected worker is now ~94), and LU-PT 1997 (procedural recognition of invalidity decisions; the calculator is old-age only). Users who fall in any of these populations should apply directly to CCSS, which evaluates the preservation manually.
Based on CNAP's Conventions internationales page (last modified 5 June 2024); Council Regulation (EC) No 883/2004 Article 8 and Annex II; Case C-227/89 Rönfeldt v Bundesversicherungsanstalt für Angestellte; LU CSS Art. 184 (aggregated-stage threshold) and Art. 90 et seq. (export of benefits).
EU Regulation 883/2004
The EU coordination algorithm is documented in detail above — see Part 4 — Cross-border careers under EU Reg 883/2004 for the dual calculation, the imputation rule, and the eligibility gates.
U.S.-Luxembourg Bilateral
The Agreement between the United States of America and the Grand Duchy of Luxembourg on Social Security was signed in Luxembourg on 12 February 1992 and entered into force on 1 November 1993. It governs old-age, invalidity, and survivors pensions for users with insurance periods in both countries. The English text is published by the U.S. Social Security Administration (cited below); the French text on Légilux is equally authentic.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 17(1) requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension and the contributions paid may be reimbursed at age 65 under Article 17(2). CSS Art 171 via Article 12 requires 120 months of aggregated coverage at age 65 — Luxembourg + United States periods that don't coincide are added together for this test.
Calculation. When both gates are met, Article 16 sets two paths. If the user qualifies for an LU pension on Luxembourg periods alone (≥ 120 months), Article 16(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 16(2). If the user only qualifies through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 16(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + US career had been completed under LU law) multiplied by the LU share of total months. Article 16(2)(c) provides the imputation rule: US periods receive the user's average earnings recorded for periods of coverage completed under Luxembourg laws for proportional (MP) increases, and the LU fixed amount for fixed (MF) increases.
Accuracy framing. The U.S.-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. This is a deliberate trade-off: the engine ships now to give US-LU users a Luxembourg-side estimate, with the option to upgrade to CCSS-validated framing in a future iteration. Each country pays its own pension under its own rules; the calculator estimates only the Luxembourg portion.
Sources: Agreement Between the United States of America and the Grand Duchy of Luxembourg on Social Security, 12 February 1992 (English text: SSA — Agreement texts; Mémorial A 1993, p. 1034 + p. 1041); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 6 (anti-reduction), 12 (totalization), 13(2) (US-side aggregation, informational only), 15 (child-raising, LU-coverage condition), 16(1) and 16(2) (LU calculation paths), 17 (LU minimum + reimbursement), and 27(1)(b) (pre-1937 US periods excluded) of the convention.
Canada-Luxembourg Bilateral
The Convention on Social Security between Canada and the Grand Duchy of Luxembourg was signed in Ottawa on 22 May 1986 and entered into force on 1 April 1990. It was substantially amended by the 1992 Avenant (signed Ottawa, 6 February 1992; in force 1 January 1994; LU promulgation Loi du 8 juillet 1993, Mémorial A 1993-52). The Avenant replaced Part III of the original Convention in its entirety, substituting the calculation Article XII and adding Article IX (third-state totalisation) and Article IX bis (1-year minimum + contribution reimbursement). The English text published by the Government of Canada (cited below) and the French text in the Mémorial are equally authentic.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article IX bis(1) (added by the 1992 Avenant) requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension and the contributions paid may be reimbursed at age 65 under Article IX bis(2). CSS Art 171 via Article VIII requires 120 months of aggregated coverage at age 65 — Luxembourg + Canadian periods that don't coincide are added together for this test, with one Canadian year corresponding to 12 Luxembourg months per Article VIII(3).
Calculation. When both gates are met, Article XII (post-Avenant) sets two paths. If the user qualifies for an LU pension on Luxembourg periods alone (≥ 120 months), Article XII(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article XII(2). If the user only qualifies through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article XII(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Canadian career had been completed under LU law) multiplied by the LU share of total months. Article XII(2)(c) provides the imputation rule: Canadian periods receive the average of the contributory salaries, wages and earnings recorded for the periods of insurance completed under the legislation being applied for proportional (MP) increases, and the LU fixed amount for fixed (MF) increases. This is structurally identical to the U.S.-Luxembourg Article 16(2)(c) rule.
Accuracy framing. The Canada-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article XII(3) (third-state extension) by dispatcher independence — when a user has Luxembourg + Canadian + EU periods, the EU 883/2004 engine and the Canada-Luxembourg engine each compute their path independently and the calculator pays the maximum, mirroring CCSS practice ("accord par accord"). Article XXI(4) (pre-1988 LU non-resident periods deemed LU residence for transitional fixed increases) and Article VIII(3)(b) (early-retirement / disability / survivor totalisation) are not modelled in the MVP — the calculator targets post-1988 careers and age-65 old-age pensions only. Each country pays its own pension under its own rules; the calculator estimates only the Luxembourg portion.
Sources: Convention on Social Security between Canada and the Grand Duchy of Luxembourg, signed 22 May 1986 (Ottawa); 1992 Avenant signed 6 February 1992 (Ottawa), in force 1 January 1994 — verbatim English text in Canada Treaty Series 1994/8 (Government of Canada Publications); Service Canada consolidated text (treaty-accord.gc.ca); LU promulgation Loi du 24 mai 1989 (Mémorial A 1989-37) and Loi du 8 juillet 1993 (Mémorial A 1993-52); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles II(1)(b) (LU coverage scope), III (personal scope, no nationality restriction), VIII (totalization), IX (third-state totalisation), IX bis (1-year minimum + reimbursement at 65), XII(1), XII(2)(a)-(c), and XII(3) (LU calculation paths, post-Avenant), and XXI(4) (transitional fixed increases) of the convention.
Quebec-Luxembourg Bilateral
The Entente on Social Security between Luxembourg and Quebec was signed in Québec City on 22 September 1987 and entered into force on 1 April 1990. It was substantially amended by the 1992 Avenant (signed 2 April 1992), which added Article 5bis (anti-cumulation) and Article 14bis (LU-side calculation rules). The same 1989 Luxembourg approving law (Loi du 24 mai 1989, Mémorial A 1989-37) covers both this entente and the separate Canada-Luxembourg Convention. Quebec is administrationally distinct from federal Canada: Quebec runs its own provincial pension regime, the Régime de rentes du Québec (RRQ), administered by Retraite Québec. Federal Canada (Canada Pension Plan, CPP) is administered by Service Canada under a separate convention. A user is covered by RRQ or CPP based on Quebec residency during the relevant work period — never both. The authentic text of the entente is in French only; no authoritative English version exists.
Eligibility. A single threshold applies: CSS Art 171 via Article 14 requires 120 months of aggregated coverage at age 65 — Luxembourg + Quebec periods that don't overlap are added together for this test, with one Quebec year corresponding to 12 Luxembourg months per Article 14(3). Note: unlike the U.S.-Luxembourg and Canada-Luxembourg treaties, the Quebec entente has no separate 1-year LU minimum gate (no equivalent of CA-LU Article IX bis(1) or US-LU Article 17(1)). A user with as little as 6 months of Luxembourg insurance can still receive a Luxembourg pension under the Quebec treaty path provided the 120-month aggregated stage is met. This is a deliberate divergence from the other two engines and reflects the entente's textual silence on a 1-year floor.
Calculation. When eligibility is met, Article 14bis (added by the 1992 Avenant) sets two paths. If the user qualifies for an LU pension on Luxembourg periods alone (≥ 120 months), Article 14bis(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 14bis(2) — verbatim « Le montant le plus élevé est seul retenu ». If the user only qualifies through aggregation (LU < 120 months but aggregated ≥ 120), Article 14bis(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Quebec career had been completed under LU law) multiplied by the LU share of total months. Article 14bis(2)(c) provides the imputation rule, verbatim identical to the Canada-Luxembourg Article XII(2)(c): Quebec periods receive « la moyenne des salaires, traitements ou revenus cotisables constatée pour les périodes d'assurance accomplies sous la législation qu'elle applique » for proportional (MP) increases, and the LU fixed amount for fixed (MF) increases.
Accuracy framing. The Quebec-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 14bis(3) (third-state extension) by dispatcher independence — when a user has Luxembourg + Quebec + EU periods, the EU 883/2004 engine and the Quebec-Luxembourg engine each compute their path independently and the calculator pays the maximum. A user with both rest-of-Canada (CPP) and Quebec (RRQ) career years triggers BOTH the Canada-Luxembourg engine and the Quebec-Luxembourg engine — the dispatcher composes them transparently. Article 5bis anti-cumulation rules, Article 38(2)(h) (pre-1988 LU non-resident periods deemed LU residence for transitional fixed increases), and Article 14(2)(b) (early-retirement / disability / survivor totalisation) are not modelled in the MVP — the calculator targets post-1988 careers and age-65 old-age pensions only. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion.
Sources: Entente en matière de sécurité sociale entre le Luxembourg et le Québec, signed 22 September 1987 (Québec City); 1992 Avenant signed 2 April 1992 — verbatim French texte consolidé hosted by secu.lu (secu.lu PDF); LU promulgation Loi du 24 mai 1989 (Mémorial A 1989-37, p. 703) — same approving law as Canada-Luxembourg; CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(1)(b) (LU coverage scope: pension insurance), 3 (personal scope), 5bis (anti-cumulation, added by the Avenant), 14 (totalisation), 14bis (LU calculation paths, added by the Avenant — autonomous-or-better at 14bis(1), pro-rata at 14bis(2), imputation rule at 14bis(2)(c)), 15 (third-state totalisation), and 38(2)(h) (transitional fixed increases) of the entente. The authentic text is French only.
India-Luxembourg Bilateral
The Agreement on Social Security between the Grand Duchy of Luxembourg and the Republic of India was signed on 30 September 2009 and entered into force on 1 June 2011. LU promulgation: Loi du 18 avril 2010 (Mémorial A 2010-064, p. 1252) and the entry-into-force decree at Mémorial A 2011-080 (p. 1265). The authoritative text is English only — the French version hosted by secu.lu is explicitly marked as a non-authoritative translation. The calculator's engine cites the English original published by India's Ministry of External Affairs.
Indian coverage scope: EPS only. Per Article 2(1)(b) of the Agreement, the convention covers only Indian benefits classified as old-age and survivors' pension for employed persons, plus the permanent total disability pension for employed persons. This corresponds to the Employees' Pension Scheme (EPS) administered by the Employees' Provident Fund Organisation (EPFO). The Agreement does NOT cover (i) the National Pension System (NPS) — for government workers and voluntary subscribers, or (ii) the Employees' Provident Fund (EPF/PF) — the savings vehicle paired with EPS. If your Indian career was under NPS or EPF only, those years do not count toward Luxembourg aggregation under this treaty. When entering Indian months in the calculator, count only your EPS-creditable months.
Eligibility. A single threshold applies: CSS Art 171 via Article 12 requires 120 months of aggregated coverage at age 65 — Luxembourg + EPS-creditable Indian periods that don't overlap are added together for this test. Note: like the Quebec-Luxembourg entente, the India-Luxembourg agreement has no separate 1-year LU minimum gate (no equivalent of CA-LU Article IX bis(1) or US-LU Article 17(1)). Even with as little as 6 months of Luxembourg insurance, you can receive a Luxembourg pension under this treaty path provided the 120-month aggregated stage is met.
Calculation. When eligibility is met, Article 14 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 14(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 14(2) — verbatim "Only the higher of these two amounts shall be taken into consideration." If you only qualify through aggregation (LU < 120 months but aggregated ≥ 120), Article 14(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Indian career had been completed under LU law) multiplied by the LU share of total months (Article 14(2)(c)). Article 14(2)(b) provides the imputation rule: "the calculation basis is established by reference only to those insurance periods completed under Luxembourg legislation" — when computing the theoretical amount, the LU institution uses only your Luxembourg-recorded earnings basis.
Accuracy framing. The India-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 14(3) (third-state extension) and Article 17 (third-state totalisation) by dispatcher independence — when you have Luxembourg + Indian + EU periods, the EU 883/2004 engine and the India-Luxembourg engine each compute their path independently and the calculator pays the maximum. Article 6 anti-cumulation rules, Article 13 reference-period extension (relevant only to invalidity / survivors), and Article 18 recalculation are not modelled in the MVP — the calculator targets age-65 old-age pensions only. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. EPFO computes the Indian-side EPS benefit independently under Article 16 of the Agreement.
Sources: Agreement on Social Security between the Grand Duchy of Luxembourg and the Republic of India, signed 30 September 2009; in force 1 June 2011 — verbatim English original hosted by India's Ministry of External Affairs (mea.gov.in PDF); LU promulgation Loi du 18 avril 2010 (Mémorial A 2010-064, p. 1252) and entry-into-force decree (Mémorial A 2011-080, p. 1265); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(1)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 2(1)(b) (Indian coverage scope: EPS only — old-age, survivors, permanent total disability for employed persons), 3 (personal scope), 12 (totalisation), 14 (LU calculation paths — autonomous-or-better at 14(1), pro-rata at 14(2)(c), imputation basis at 14(2)(b)), 15 (baby-years; "last LU coverage before birth/adoption" condition), 16 (Indian-side EPS calculation), 17 (third-state totalisation), and 18 (recalculation) of the Agreement. The authentic text is English only; the secu.lu French version is a non-authoritative translation.
Japan-Luxembourg Bilateral
The Agreement on Social Security between the Grand Duchy of Luxembourg and Japan was signed in Tokyo on 10 October 2014 and entered into force on 1 August 2017. LU promulgation: Loi du 5 avril 2016 (Mémorial A 2016-67, p. 1106), with entry-into-force decree at Mémorial A 2017-507 and admin arrangement at Mémorial A 2017-506. The authoritative text is English only: the convention's closing provision reads "Done at Tokyo on the tenth day of October, 2014 in duplicate in the English language." Note the publication anomaly: Mémorial A 2016-61 (15 April 2016) initially published a French translation; A 2016-67 (21 April 2016) issued a correction note replacing the text with the authoritative English version. The calculator cites A 2016-67.
Japanese coverage scope: both pillars. Per Article 2(1)(a) of the convention, the agreement covers both Japanese public pension pillars: (i) the National Pension (Kokumin Nenkin) — the universal pillar for all residents — and (ii) the Employees' Pension Insurance (Kosei Nenkin) — the second pillar for company employees. Both pillars count toward Luxembourg aggregation. The Japan Pension Service (JPS / 日本年金機構) administers both pillars and computes the Japanese-side benefit independently under Article 16 of the convention. When entering Japanese months in the calculator, count your total Japanese coverage months across whichever pillars apply.
Eligibility. A single threshold applies: CSS Art 171 via Article 13 requires 120 months of aggregated coverage at age 65 — Luxembourg + Japanese periods that don't coincide are added together for this test. Note: like the Quebec-Luxembourg and India-Luxembourg conventions, the Japan-Luxembourg agreement has no separate 1-year LU minimum gate (no equivalent of CA-LU Article IX bis(1) or US-LU Article 17(1)). Even with as little as 6 months of Luxembourg insurance you can still receive a Luxembourg pension under this treaty path provided the 120-month aggregated stage is met. This is the third case of this divergence among the modelled treaties.
Calculation. When eligibility is met, Article 19 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 19(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 19(2) — verbatim "Only the higher of these two amounts shall be taken into consideration." If you only qualify through aggregation (LU < 120 months but aggregated ≥ 120), Article 19(2) applies and Luxembourg pays the pro-rata amount only. The pro-rata is the theoretical amount (LU pension as if the full LU + Japanese career had been completed under LU law) multiplied by the LU share of total months (Article 19(2)(c)). Article 19(2)(b) provides the imputation rule, verbatim identical to India-Luxembourg Article 14(2)(b): "the basis for calculation is established by reference only to those periods of coverage completed under the legislation of Luxembourg" — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount.
Accuracy framing. The Japan-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: when you have Luxembourg + Japanese + EU periods, the EU 883/2004 engine and the Japan-Luxembourg engine each compute their path independently and the calculator pays the maximum (dispatcher independence — note that unlike CA-LU, QC-LU, or IN-LU, the Japan-Luxembourg agreement does not contain an explicit third-state extension paragraph; dispatcher independence handles mixed-treaty careers correctly regardless). Article 18 reference-period extension (relevant only to invalidity / survivors), Article 20(2) anti-cumulation rules, and Article 21 optional sickness insurance are not modelled in the MVP — the calculator targets age-65 old-age pensions only. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. JPS computes the Japanese-side benefit independently under Article 16.
Sources: Agreement on Social Security between the Grand Duchy of Luxembourg and Japan, signed 10 October 2014 (Tokyo); in force 1 August 2017 — verbatim English text in Mémorial A 2016-67 (Légilux PDF); LU promulgation Loi du 5 avril 2016 (Mémorial A 2016-67, p. 1106), entry-into-force decree (Mémorial A 2017-507, 23 May 2017), administrative arrangement (Mémorial A 2017-506, 23 May 2017); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(2)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 2(1)(a) (Japanese coverage scope: both pillars — Kokumin Nenkin (i) and Kosei Nenkin (ii)), 3 (personal scope, no nationality restriction), 13 (totalisation), 18 (reference-period extension), 19 (LU calculation paths — autonomous-or-better at 19(1), pro-rata at 19(2)(c), imputation basis at 19(2)(b)), 20(1) (baby-years; "last LU coverage before birth/adoption" condition), 20(2) (anti-cumulation), and 21 (optional sickness insurance) of the Agreement. The authentic text is English only; Mémorial A 2016-61's French translation was superseded by A 2016-67's English correction.
Korea-Luxembourg Bilateral
The Agreement on Social Security between the Government of the Grand Duchy of Luxembourg and the Government of the Republic of Korea was signed in Luxembourg on 1 March 2018 and entered into force on 1 September 2019. LU promulgation: Loi du 28 mai 2019 (Mémorial A 2019-381, 3 June 2019), with entry-into-force decree at Mémorial A 2019-436 and admin arrangement at Mémorial A 2019-435. The convention is signed in French, Korean, and English, all three equally authentic, with English as the tiebreaker on divergence. A rectificatif (Mémorial A 2019-384, 4 June 2019) corrected a single cross-reference in the French column's definition of "competent institution" (Article 1(1)(d)(i)) — purely typographical; no operative effect. The calculator cites the English column of the Mémorial A 2019-381 publication.
Eligibility. A single threshold applies: CSS Art 171 via Article 15 requires 120 months of aggregated coverage at age 65 — Luxembourg + Korean periods that don't overlap are added together for this test (an inclusive ≥ 120 equality satisfies the threshold). Korea's coverage is single-pillar — the convention covers the National Pension Act (Article 2(1)(b)), administered by the National Pension Service (NPS / 국민연금공단). Note: like the Quebec-Luxembourg, India-Luxembourg, and Japan-Luxembourg conventions, the Korea-Luxembourg agreement has no separate 1-year LU minimum gate (no equivalent of CA-LU Article IX bis(1) or US-LU Article 17(1)). Even with as little as 6 months of Luxembourg insurance you can still receive a Luxembourg pension under this treaty path provided the 120-month aggregated stage is met. Fourth case of this divergence among the modelled treaties.
Calculation. When eligibility is met, Article 17 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 17(1)–(2) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 17(3) — verbatim "Only the higher of these two amounts shall be taken into consideration." If you only qualify through aggregation (LU < 120 months but aggregated ≥ 120), Article 17(3) applies and Luxembourg pays the pro-rata amount only. The pro-rata is the theoretical amount (LU pension as if the full LU + Korean career had been completed under LU law) multiplied by the LU share of total months (Article 17(3)(c)). Article 17(3)(b) provides the imputation rule, verbatim parallel to India-Luxembourg Article 14(2)(b) and Japan-Luxembourg Article 19(2)(b): "the calculation basis is to be established by reference only to those periods of coverage completed under the legislation of Luxembourg" — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount. Note on textual organisation: KR-LU splits the autonomous-or-better rule across paragraphs (1) and (2) (paragraph (1) computes the autonomous, paragraph (2) the pro-rata + comparison), while IN-LU and JP-LU fold both into a single paragraph (1). Algorithm identical.
Accuracy framing. The Korea-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 17(4) (third-state extension) and Article 15(3) (third-state totalisation) by dispatcher independence — when you have Luxembourg + Korean + EU periods, the EU 883/2004 engine and the Korea-Luxembourg engine each compute their path independently and the calculator pays the maximum. Article 6 (anti-cumulation), Article 7 (reference-period extension, relevant only to invalidity / survivors), Article 8 (optional continued insurance), and Article 19 (Korean-side calculation, handled by NPS) are not modelled in the MVP — the calculator targets age-65 old-age pensions only. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. NPS Korea computes the Korean-side benefit independently under Article 19.
Sources: Agreement on Social Security between the Government of the Grand Duchy of Luxembourg and the Government of the Republic of Korea, signed 1 March 2018 (Luxembourg); in force 1 September 2019 — bilingual French + English text in Mémorial A 2019-381 (Légilux PDF); rectificatif Mémorial A 2019-384 (4 June 2019, single typographical correction to French column; no operative effect); LU promulgation Loi du 28 mai 2019 (Mémorial A 2019-381), entry-into-force decree (Mémorial A 2019-436, 25 June 2019), administrative arrangement (Mémorial A 2019-435, 25 June 2019); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(1)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 2(1)(b) (Korean coverage scope: National Pension Act, NPS-administered), 3 (personal scope, no nationality restriction), 6 (anti-cumulation), 7 (reference-period extension), 8 (optional continued insurance), 15 (totalisation), 16 (general calculation principle), 17 (LU calculation paths — autonomous-or-better at 17(1)–(2), pro-rata at 17(3)(c), imputation basis at 17(3)(b), third-state extension at 17(4)), 18 (baby-years; "last LU coverage before birth/adoption" condition), and 19 (Korean-side calculation) of the Agreement. The authentic languages are French, Korean, and English (all equally authentic; English prevails on divergence).
Brazil-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Federative Republic of Brazil was signed in Luxembourg on 22 June 2012 and entered into force on 1 April 2018. LU promulgation: Loi du 30 juillet 2013 (Mémorial A 23 August 2013); entry-into-force decree at Mémorial A 2018-63; administrative arrangement signed 18 February 2015, in force 1 April 2018. The closing provision reads « FAIT à Luxembourg, le 22 juin 2012, en double exemplaire, en langues française et portugaise, les deux textes faisant également foi » — French and Portuguese are equally authentic; the calculator cites the French column. The 2012 convention abrogates the 1965 LU-Brazil convention in full (Article 32(1)); rights already liquidated under the 1965 instrument are preserved (Article 32(2)) and a one-shot more-favourable rule applies to applications pending at the 2018 transition (Article 32(3)). For prospective claimants — the calculator's MVP scope — only the 2012 convention applies.
Brazilian coverage scope: INSS-administered RGPS + RPPS. Per Article 2(I) of the convention, the agreement covers (a) the Regime Geral de Previdência Social (RGPS, the general regime for private-sector workers) and (b) the Regime Próprio de Previdência Social (RPPS, the federal public-sector regime). Both regimes are administered by INSS (Instituto Nacional do Seguro Social). The administrative arrangement names INSS as the sole Brazilian liaison institution. When entering Brazilian months in the calculator, enter your total INSS coverage months across both regimes (state-level and municipal RPPS schemes are not covered by the convention).
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 17(1) requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. Brazil-Luxembourg returns to this 1-year LU minimum gate after four consecutive engines without it (Quebec, India, Japan, Korea) — same shape as U.S.-Luxembourg Article 17(1) and Canada-Luxembourg Article IX bis(1). CSS Art 171 via Article 14 requires 120 months of aggregated coverage at age 65 — Luxembourg + Brazilian periods that don't overlap are added together for this test (« pour autant que ces périodes ne se superposent pas »).
Calculation. When both gates are met, Article 16 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 16(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 16(2). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 16(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Brazilian career had been completed under LU law) multiplied by the LU share of total months. Article 16(2)(b) imputation rule: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to India-Luxembourg Article 14(2)(b), Japan-Luxembourg Article 19(2)(b), and Korea-Luxembourg Article 17(3)(b)).
Article 16(2)(c) pro-rata cap — unique to Brazil-Luxembourg. When computing the pro-rata fraction LU months / total months, Brazil-Luxembourg caps the denominator at the maximum-required duration for a full Luxembourg benefit: « Cette durée totale est plafonnée à la durée maximale éventuellement requise par la législation qu'elle applique pour le bénéfice d'une prestation complète ». For Luxembourg, that cap is 480 months (40 years) — the duration at which the Luxembourg fixed-increase plate (MF) maxes out. A user with 30 LU + 480 BR (= 510 aggregated months) gets 30 / min(510, 480) = 30 / 480 instead of 30 / 510 — the cap raises the pro-rata fraction and is therefore user-favourable. The cap is unique to Brazil-Luxembourg among the seven bilateral engines modelled (U.S., Canada, Quebec, India, Japan, Korea, Brazil) and is one of the substantive divergences worth noting on the result panel.
Accuracy framing. The Brazil-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 16(3) (third-state extension) and Article 15 (third-state totalisation) by dispatcher independence — when you have Luxembourg + Brazilian + EU periods, the EU 883/2004 engine and the Brazil-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Article 6 (anti-cumulation), Article 7 (optional continued insurance), Article 13 (assimilation of facts), Article 18 (baby-years; "last LU coverage before birth/adoption" condition), Article 19 (Brazilian minimum-benefit), and the invalidity / survivor branches are not modelled in the MVP — the calculator targets age-65 old-age pensions only. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. INSS computes the Brazilian-side benefit independently under Articles 14 and 16 of the convention.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République Fédérative du Brésil, signed 22 June 2012 (Luxembourg); in force 1 April 2018 — verbatim French + Portuguese text in the Légilux HTML render of Loi du 30 juillet 2013 (Légilux HTML; the Légilux PDF endpoint returned 403 during Phase 0); Mémorial A 23 August 2013 (LU promulgation); Mémorial A 2018-63 (entry-into-force decree); administrative arrangement signed 18 February 2015 (in force 1 April 2018); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(I) (Brazilian coverage scope: RGPS + RPPS, INSS-administered), 2(II)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 3 (personal scope, open-scope per Phase 0 audit), 14 (totalisation, non-overlap rule), 15 (third-state totalisation), 16 (LU calculation paths — autonomous-or-better at 16(1), pro-rata at 16(2)(c) WITH the unique 480-month denominator cap, imputation basis at 16(2)(b)), 16(3) (third-state extension), 17 (LU 1-year minimum), 18 (baby-years; "last LU coverage" condition), 32 (abrogation of 1965 convention; transitional preservation of liquidated rights) of the convention. The authentic languages are French and Portuguese (both equally authentic; closing provision « les deux textes faisant également foi »). Architectural-correction audit trail: T11 Phase 0 report.
Chile-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Republic of Chile was signed in Luxembourg on 3 June 1997 and entered into force on 1 July 1999. LU promulgation: Loi du 6 avril 1999 (Mémorial A 1999, p. 906); administrative arrangement signed the same day, published Mémorial A 1999, p. 915. The closing provision reads « FAIT à Luxembourg, le 3 juin 1997, en double exemplaire; en langues française et espagnole, les deux textes faisant également foi » — French and Spanish are equally authentic, with no tiebreaker clause. The calculator cites the French column (the Mémorial publishes only the French column; the Spanish column was published in Chile's Diario Oficial). This is the oldest treaty in the active engine set; Phase 0 + Phase 1 audits confirmed that the calculation rules follow the standard autonomous-or-better + pro-rata pattern proven across the prior modern treaties — no structural divergence from the 1997 vintage.
Chilean coverage scope: BOTH pension pillars. Chile's pension landscape has two parallel components: (a) the post-1981 private capitalisation system administered by AFPs (Administradoras de Fondos de Pensiones) under the supervision of Superintendencia de Pensiones, mandatory for all post-1981 entrants and optional for pre-1981 workers who switched, and (b) the older public PAYG system administered by IPS (Instituto de Previsión Social) — the institution called INP (Instituto de Normalización Previsional) at the time the convention was signed; renamed IPS in 2008. Article 2(A) of the convention covers BOTH pillars, paragraphs (a) and (b). When entering Chilean months in the calculator, count your total Chilean coverage months across whichever pillar(s) apply.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 16 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension and the contributions paid may be reimbursed at age 65 on request, conformément à la législation luxembourgeoise. Chile-Luxembourg has the 1-year LU minimum gate after four consecutive engines without it (Quebec, India, Japan, Korea) — same shape as U.S.-Luxembourg Article 17(1) and Brazil-Luxembourg Article 17. Note the article-numbering inversion: US-LU and BR-LU place the 1-year minimum in Article 17 and the calculation paths in Article 16; CL-LU swaps these (Article 16 = 1-year minimum; Article 17 = calculation paths). Functionally identical. CSS Art 171 via Article 11 requires 120 months of aggregated coverage at age 65 — Luxembourg + Chilean periods that don't overlap are added together for this test (« pour autant que ces périodes ne se superposent pas »).
Calculation. When both gates are met, Article 17 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 17(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 17(2) — verbatim « Le montant le plus élevé est seul retenu ». If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 17(2) applies and Luxembourg pays the pro-rata amount only. The pro-rata is the theoretical amount (LU pension as if the full LU + Chilean career had been completed under LU law, per Article 17(2)(a)) multiplied by your LU share of total months (Article 17(2)(b)). Article 17(2)(c) provides the imputation rule, the most explicit version among all the engines — split into two subparagraphs: (i) for proportional increases, the LU institution uses « la moyenne des salaires, traitements ou revenus cotisables constatée pour les périodes d'assurance accomplies sous la législation qu'elle applique » (LU average earnings imputed to Chilean periods), and (ii) for fixed increases, « un montant forfaitaire égal à celui qui serait dû si ces périodes avaient été accomplies sous la législation qu'elle applique » (LU fixed amount). Algorithmically equivalent to the simpler imputation clause in IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), BR-LU 16(2)(b).
Accuracy framing. The Chile-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. No pro-rata-denominator cap (unlike Brazil-Luxembourg 16(2)(c) which caps the denominator at 480 months); the CL-LU pro-rata fraction uses the unconstrained aggregated-months total. Known simplifications: the engine handles mixed-treaty careers (Luxembourg + Chile + EU, Luxembourg + Chile + United States, etc.) by dispatcher independence — Article 17 has no explicit third-state-extension paragraph (no equivalent of BR-LU 16(3) or KR-LU 17(4)), so the dispatcher's max-of-treaties iteration handles composition implicitly (« accord par accord »). The Article 27(5) CSS 172.8 opt-out cohort (pre-1999 claimants whose Chilean periods were previously credited under CSS 172.8 may opt for an LU-only computation) is not modelled in the engine; users who fall in this cohort should contact CCSS directly. Article 6 (anti-cumulation), Article 12 (invalidity determination), Article 14 (baby-years; "last LU coverage before birth/adoption" condition — caveat emitted by the engine), Article 15 (reference-period extension; invalidity / survivors only), Article 18 (Chilean-side liquidation, handled by AFPs / IPS), Article 19 (voluntary insurance), and Articles 26–27 (pre-treaty retroactivity) are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. The Chilean institutions — an AFP for the post-1981 private system, or IPS for the public PAYG system — compute the Chilean-side benefit independently under Article 18.
Sources: Convention entre le Grand-Duché de Luxembourg et la République du Chili sur la sécurité sociale, signed 3 June 1997 (Luxembourg); in force 1 July 1999 — verbatim French text via the Légilux HTML render of Loi du 6 avril 1999 (Légilux HTML); the same Mémorial A 1999-36 publication (p. 906–917 for the Chile section) also contains the LU-Portugal invalidity-recognition accord (p. 904) and the LU-Poland social-security convention (p. 918+); administrative arrangement Mémorial A 1999, p. 915; CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(A)(a) (Chilean coverage scope: AFP private capitalisation system), 2(A)(b) (Chilean coverage scope: INP/IPS public PAYG system), 2(B)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 3 (personal scope, open-scope per Phase 0 audit), 11 (totalisation, non-overlap rule — PDF rendering shows "Article Il" due to OCR quirk on the 1999-vintage Mémorial scan), 14 (baby-years; "last LU coverage" condition), 16 (LU 1-year minimum gate + contribution reimbursement at 65), 17 (LU calculation paths — autonomous-or-better at 17(1) per « Le montant le plus élevé est seul retenu »; pro-rata at 17(2)(b) with no denominator cap; imputation basis split into 17(2)(c)(i) for MP and 17(2)(c)(ii) for MF), 18 (Chilean-side liquidation, handled by AFPs / IPS), 26 (pre-treaty retroactivity), 27 (revision of previously denied / suspended pensions; CSS 172.8 opt-out cohort flagged) of the Convention. Authentic languages: French and Spanish (both equally authentic; no tiebreaker clause). Audit trail: T13 Phase 0 report and Phase 1 audit.
Argentina-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Argentine Republic was signed at Alcalá de Henares (Spain) on 13 May 2010 and entered into force on 1 December 2014. LU promulgation: Loi du 7 avril 2011 (Mémorial A 2011-75 of 20 April 2011, p. 1224 et seq.); entry-into-force decree at Mémorial A 2014-N7 of 25 September 2014; administrative arrangement at Mémorial A 2017-205 of 15 February 2017, operative retroactively from 1 December 2014. The closing provision reads « FAIT à Alcalá de Henares, le 13 mai 2010, en double exemplaire, en langues française et espagnole, les deux textes faisant également foi » — French and Spanish are equally authentic, with no tiebreaker clause; the calculator cites the French column (the version published in the Luxembourg Mémorial). There is no predecessor LU-Argentina convention; Article 29 is the standard pre-EIF clause crediting pre-2014 Argentine coverage at face value, with no transitional carve-out.
Argentine coverage scope: comprehensive (national + provincial + professional + municipal). Per Article 2(1)(A)(a), the convention covers contributory old-age, invalidity, and survivors' benefits administered by « les organismes nationaux, provinciaux des fonctionnaires publics ou professionnels et municipaux » — i.e., every contributory level of the Argentine pension system. This includes (a) the national SIPA (Sistema Integrado Previsional Argentino), the unified PAYG system since 2008 (previously SIJP from 1994), administered by ANSES (Administración Nacional de la Seguridad Social); (b) provincial public-employee schemes — the cajas provinciales that were not transferred to ANSES (e.g., Caja de Jubilaciones de la Provincia de Buenos Aires, Caja de Previsión Social de la Provincia de Córdoba); (c) professional-body schemes — the cajas profesionales (e.g., Caja de Previsión Social para Profesionales de Ciencias Económicas); and (d) municipal contributory schemes. The convention is unambiguous on this point — unlike India-Luxembourg (EPS-only) or pre-T11 Brazil-Luxembourg (INSS-only). When entering Argentine months in the calculator, count your total Argentine coverage months across all in-scope schemes; no per-scheme split is required. The Argentine ministry of Trabajo, Empleo y Seguridad Social is the formal autorité compétente per Article 1(1)(b); ANSES serves as the operational liaison body designated under the administrative arrangement for cross-border claim coordination across all Argentine institutions.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 14 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (« si l'ensemble des périodes d'assurance accomplies sous la législation de l'une des Parties contractantes n'atteignent pas un an, aucune prestation n'est accordée en vertu de ladite législation »). Argentina-Luxembourg has the 1-year LU minimum gate — same shape as U.S.-Luxembourg Article 17(1), Brazil-Luxembourg Article 17, and Chile-Luxembourg Article 16. Note the article numbering — third pattern in the engine fleet: AR-LU has Article 14 = 1-year LU minimum, Article 13 = LU calculation paths, Article 11 = totalisation. Distinct from US-LU/BR-LU (Art 17 / Art 16 / Art 14) and CL-LU (Art 16 / Art 17 / Art 11). Functionally identical mechanics. CSS Art 171 via Article 11 requires 120 months of aggregated coverage at age 65 — Luxembourg + Argentine periods that don't overlap are added together for this test (« pour autant que ces périodes ne se superposent pas »).
Calculation. When both gates are met, Article 13 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 13(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 13(2) — verbatim « Elle verse à l'intéressé le montant le plus élevé de prestation, calculé conformément à l'une ou l'autre de ces deux méthodes ». If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 13(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Argentine career had been completed under LU law, per Article 13(2)(a)) multiplied by the LU share of total months (Article 13(2)(c)). Article 13(2)(b) imputation rule: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — verbatim-identical to Brazil-Luxembourg 16(2)(b). The LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), CL-LU 17(2)(c)).
Article 13(2)(c) pro-rata cap — verbatim-identical to Brazil-Luxembourg 16(2)(c). When computing the pro-rata fraction LU months / total months, Argentina-Luxembourg caps the denominator at the maximum-required duration for a full Luxembourg benefit: « Cette durée totale est plafonnée à la durée maximale éventuellement requise par la législation qu'elle applique pour le bénéfice d'une prestation complète ». For Luxembourg, that cap is 480 months (40 years) — the duration at which the Luxembourg fixed-increase plate (MF) maxes out. A user with 30 LU + 480 AR (= 510 aggregated months) gets 30 / min(510, 480) = 30 / 480 instead of 30 / 510 — the cap raises the pro-rata fraction and is therefore user-favourable. AR-LU is the second engine to ship the 480-month cap (after Brazil-Luxembourg, with verbatim-identical wording). The older 1997 Chile-Luxembourg convention does not have it; the cap is a feature shared by the two newer Latin American bilateral conventions (BR-LU 2012/2018 and AR-LU 2010/2014).
Accuracy framing. The Argentina-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 13(3) (third-state extension) and Article 12 (third-state totalisation) by dispatcher independence — when you have Luxembourg + Argentine + EU periods, the EU 883/2004 engine and the Argentina-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Article 6 (anti-cumulation; Article 6(1) explicitly carves out old-age/invalidity/survival pensions from the cumulation prohibition, so CCSS handles domestic anti-cumulation at drawdown), Article 7 (voluntary continued insurance), Article 16 (invalidity determination), Article 17 (baby-years; "last LU coverage before birth/adoption" condition — caveat emitted by the engine when both baby-years and AR periods are present), Article 18 (reference-period extension; invalidity/survivors only), and Article 19 (Argentine-side conditions, handled by ANSES / cajas) are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. ANSES and the provincial / professional / municipal cajas compute the Argentine-side benefit independently under Articles 11 and 13 of the convention.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République Argentine, signed 13 May 2010 (Alcalá de Henares); in force 1 December 2014 — verbatim French text via the Légilux HTML render of Loi du 7 avril 2011 (Légilux HTML; the convention is annexed to the 2011 approval law and published in Mémorial A 2011-75, p. 1224 et seq.); entry-into-force decree (Mémorial A 2014-N7, 25 September 2014, confirming reciprocal notification on 8 September 2014); administrative arrangement (Mémorial A 2017-205, 15 February 2017, operative retroactively from 1 December 2014); CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(1)(A)(a) (Argentine coverage scope: national + provincial public-employee + professional-body + municipal), 2(1)(B)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 3 (personal scope, open-scope per Phase 1 audit — verbatim « Les dispositions de la présente convention sont applicables aux personnes qui sont ou ont été soumises à la législation de l'une des Parties contractantes, aux membres de leur famille et à leurs survivants »), 6 (anti-cumulation, with Article 6(1) carve-out for Chapter-1-Title-III pensions), 11 (totalisation, non-overlap rule), 12 (third-state totalisation), 13 (LU calculation paths — autonomous-or-better at 13(1) per « Elle verse à l'intéressé le montant le plus élevé de prestation »; pro-rata at 13(2)(c) WITH the 480-month denominator cap verbatim-identical to BR-LU 16(2)(c); imputation basis at 13(2)(b)), 13(3) (third-state extension), 14 (LU 1-year minimum gate), 17 (baby-years; "last LU coverage" condition), 29 (pre-EIF coverage creditable; no predecessor convention to abrogate) of the convention. Authentic languages: French and Spanish (both equally authentic; no tiebreaker clause). Audit trail: T12 Phase 0 report and Phase 1 audit.
Uruguay-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Eastern Republic of Uruguay was signed in Luxembourg on 24 September 2012 and entered into force on 1 September 2014. LU promulgation: Loi du 30 juillet 2013 (Mémorial A 2013-154, p. 2990); entry-into-force decree at Mémorial A 2014-152, p. 2360; administrative arrangement signed 24 May 2013, published Mémorial A 2017-205 starting at page 9 (bundled with the Argentina-Luxembourg administrative arrangement at pages 2–8 of the same Mémorial). The closing provision reads « FAIT à Luxembourg, le 24 septembre 2012, en double exemplaire, en langues française et espagnole, les deux textes faisant également foi » — French and Spanish are equally authentic, with no tiebreaker clause. The calculator cites the French column (the only column physically published in the Mémorial; the Spanish column was published in Uruguay's Diario Oficial / Registro Nacional). This is the first LU-Uruguay social-security convention — no prior instrument abrogated, no Avenant.
Uruguayan coverage scope: BOTH pension pillars. Uruguay's contributory pension landscape has two parallel components, both covered by Article 2(A)(a) of the convention: (a) the public PAYG system (« système de solidarité intergénérationnelle ») administered by BPS (Banco de Previsión Social) — Uruguay's primary social-security institution and the direct counterpart to LU's CNAP — and (b) the mandatory private capitalisation system (« système d'épargne individuelle obligatoire ») administered by AFAPs (Administradoras de Fondos de Ahorro Previsional) under the supervision of the Banco Central del Uruguay. The instance file's Phase 0 expectation was "likely BPS-only" — Phase 0 read of the convention text confirmed that Article 2(A)(a) explicitly covers both pillars (« tant ceux qui se basent sur le système de solidarité intergénérationnelle que ceux basés sur le système d'épargne individuelle obligatoire »). When entering Uruguayan months in the calculator, count your total Uruguayan coverage months across both BPS and AFAP affiliations.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 14 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (« aucune prestation n'est accordée en vertu de ladite législation »). Uruguay-Luxembourg has the 1-year LU minimum gate — joining the gating engines (US-LU, CA-LU, BR-LU, CL-LU); QC-LU, IN-LU, JP-LU, KR-LU are the no-gate engines. Note the article-numbering pattern: US-LU and BR-LU place the 1-year minimum in Article 17 and the calculation paths in Article 16; CL-LU swaps these (Article 16 = minimum; Article 17 = calculation); UY-LU is the third distinct numbering pattern with Article 14 = minimum and Article 13 = calculation. Functionally identical. CSS Art 171 via Article 11 requires 120 months of aggregated coverage at age 65 — Luxembourg + Uruguayan periods that don't overlap are added together for this test (« pour autant que ces périodes ne se superposent pas »).
Calculation. When both gates are met, Article 13 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 13(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 13(2) — verbatim « Elle verse à l'intéressé le montant le plus élevé de prestation, calculé conformément à l'une ou l'autre de ces deux méthodes ». If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 13(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Uruguayan career had been completed under LU law, per Article 13(2)(a)) multiplied by your LU share of total months (Article 13(2)(c)). Article 13(2)(b) imputation rule, verbatim: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), CL-LU 17(2)(c)).
Article 13(2)(c) pro-rata cap — shared with Brazil-Luxembourg. When computing the pro-rata fraction LU months / total months, Uruguay-Luxembourg caps the denominator at the maximum-required duration for a full Luxembourg benefit: « Cette durée totale est plafonnée à la durée maximale éventuellement requise par la législation qu'elle applique pour le bénéfice d'une prestation complète ». The closing sentence of Article 13(2)(c) is verbatim identical to BR-LU Article 16(2)(c)'s closing sentence — UY-LU is the second engine with this cap after Brazil-Luxembourg. For Luxembourg, the cap is 480 months (40 years) — the duration at which the Luxembourg fixed-increase plate (MF) maxes out. A user with 30 LU + 480 UY (= 510 aggregated months) gets 30 / min(510, 480) = 30 / 480 instead of 30 / 510 — the cap raises the pro-rata fraction and is therefore user-favourable. Distinct from CL-LU (1997 vintage, no cap) and from US-LU/CA-LU/QC-LU/IN-LU/JP-LU/KR-LU (no cap). The engine reuses the AGGREGATED_MAX_MONTHS = 480 constant introduced by T11 (BR-LU).
Accuracy framing. The Uruguay-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 13(3) (third-state extension hooked into Article 12 third-state totalisation) by dispatcher independence — when you have Luxembourg + Uruguayan + EU periods, the EU 883/2004 engine and the Uruguay-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Same approach as BR-LU 16(3) and KR-LU 17(4). Article 4 (equality of treatment), Article 5 (export of benefits), Article 6 (anti-cumulation), Article 7 (voluntary continued insurance), Article 15 (reference-period extension; invalidity / survivors only), Article 16 (invalidity determination), Article 17 (baby-years; "last LU coverage before birth/adoption" condition — caveat emitted by the engine), Article 18 (Uruguayan-side conditions, handled by BPS / AFAPs), Article 19 (healthcare totalisation), Article 20 (family benefits), and Articles 28–30 (pre-treaty retroactivity) are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. The Uruguayan institutions — BPS for the public PAYG pillar or an AFAP for the private capitalisation pillar — compute the Uruguayan-side benefit independently under Articles 11 and 18 of the convention.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République Orientale de l'Uruguay, signed 24 September 2012 (Luxembourg); in force 1 September 2014 — verbatim French text via the Légilux PDF render of Loi du 30 juillet 2013 (Légilux ELI); LU promulgation Mémorial A 2013-154 (23 August 2013, p. 2990); entry-into-force decree Mémorial A 2014-152 (7 August 2014, p. 2360); administrative arrangement signed 24 May 2013, Mémorial A 2017-205 (15 February 2017) starting at page 9 — bundled with the Argentina-Luxembourg administrative arrangement at pages 2–8 of the same Mémorial; CSS Art. 171 (120-month aggregated stage at age 65) and Art. 184 (early-retirement gates, LU-only); Articles 2(A)(a) (Uruguayan coverage scope: BOTH BPS public PAYG « système de solidarité intergénérationnelle » AND AFAP private capitalisation « système d'épargne individuelle obligatoire »), 2(B)(a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), 3 (personal scope, open-scope per Phase 0 audit — verbatim wording identical to US-LU/CA-LU/IN-LU/JP-LU/KR-LU/BR-LU/CL-LU Article 3), 11 (totalisation, non-overlap rule), 12 (third-state totalisation), 13 (LU calculation paths — autonomous-or-better at 13(1) per « Elle verse à l'intéressé le montant le plus élevé de prestation »; pro-rata at 13(2)(c) WITH the 480-month denominator cap shared with BR-LU 16(2)(c); imputation basis at 13(2)(b)), 13(3) (third-state extension hook), 14 (LU 1-year minimum gate), 17 (baby-years; "last LU coverage" condition) of the Convention. Authentic languages: French and Spanish (both equally authentic; no tiebreaker clause). Audit trail: T14 Phase 0 report and Phase 1 audit.
Albania-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Republic of Albania was signed on 27 October 2014 and entered into force on 1 July 2016. LU promulgation: Loi du 5 avril 2016 (Mémorial A 2016-63); entry-into-force decree at Mémorial A 2016-96; administrative arrangement at Mémorial A 2017-458. Authentic languages: French and Albanian (no tiebreaker clause); the calculator cites the French column. Albania is the only non-Yugoslav-successor in the T15 Western Balkans cluster — the four other treaties in the cluster (Bosnia and Herzegovina, Montenegro, North Macedonia, Serbia) sit on a Yugoslav-successor lineage that AL-LU does not share. There is no predecessor LU-Albania convention; Article 3's open-scope wording (verbatim « Les dispositions de la présente convention sont applicables aux personnes qui sont ou ont été soumises à la législation d'un État contractant, ainsi qu'à leurs ayants droit ») was extra-scrutinised in Phase 0 to confirm parity with the four Yugoslav-successor treaties — confirmed open-scope.
Albanian coverage scope: single-pillar PAYG. Per Article 2 of the convention, the agreement covers Albania's « système d'assurance obligatoire sociale pour les pensions de vieillesse, les pensions d'invalidité et les pensions de survie » — the mandatory public PAYG pension system administered by ISSH (Instituti i Sigurimeve Shoqërore), Albania's social-insurance institute. There is no parallel private-capitalisation pillar to disambiguate; when entering Albanian months in the calculator, enter your total ISSH coverage months.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 15 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. AL-LU uses the « n'atteignent pas un an » drafting form — same operative result as US-LU Article 17(1), AR-LU Article 14, BR-LU Article 17, CL-LU Article 16, UY-LU Article 14. The closing sentence of Article 15 preserves LU sub-12-month periods for ISSH's own totalisation (Albanian-side concern only). CSS Art 171 via Article 6 requires 120 months of aggregated coverage at age 65 — Luxembourg + Albanian periods that don't overlap are added together for this test.
Calculation. When both gates are met, Article 17 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 17(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 17(2). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 17(2) applies and Luxembourg pays the pro-rata amount only — no autonomous comparison. The pro-rata is the theoretical amount (Article 17(2)(a) — LU pension as if the full LU + Albanian career had been completed under LU law) multiplied by the LU share of total months (Article 17(2)(c)). Article 17(2)(b) imputation rule: the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), AR-LU 13(2)(b), UY-LU 13(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), CL-LU 17(2)(c)).
Article 17(3) pro-rata cap — functional equivalent of BR/AR/UY 480-cap, different wording. Albania-Luxembourg is the fourth engine in the fleet to ship a 480-month pro-rata-denominator cap (after BR-LU, AR-LU, UY-LU) and the only one in the Western Balkans cluster. The clause appears in a separate paragraph (3), not a closing sentence of (2)(c) as in BR/AR/UY: « Si la durée totale des périodes d'assurance accomplies sous les législations des deux États contractants est supérieure à la période maximale exigée par la législation de l'un des États contractants pour le bénéfice d'une prestation complète, l'institution compétente de cet État contractant prend en compte cette période maximale au lieu de la durée totale des périodes d'assurance pour le calcul du prorata visé au paragraphe (2) point c). » The wording differs from BR-LU 16(2)(c) / AR-LU 13(2)(c) / UY-LU 13(2)(c) but the operative effect is identical: when lu_months + al_months > 480 (LU's CSS Art 220 max for a prestation complète), the pro-rata denominator is capped at 480. User-favourable: a user with 60 LU + 480 AL months gets 60 / min(540, 480) = 60 / 480 instead of 60 / 540. The engine reuses the AGGREGATED_MAX_MONTHS = 480 constant introduced by T11 (BR-LU).
Accuracy framing. The Albania-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 14 (third-state aggregation) by dispatcher independence — when you have Luxembourg + Albanian + EU periods, the EU 883/2004 engine and the Albania-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Articles 6–14 (anti-cumulation, voluntary continued insurance, posting/secondment rules), the invalidity and survivor branches covered by the convention, baby-years interactions, healthcare totalisation, and the administrative-arrangement coordination provisions are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. ISSH computes the Albanian-side benefit independently under the convention.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République d'Albanie, signed 27 October 2014; in force 1 July 2016 — verbatim French text via Légilux (Légilux ELI); LU promulgation Loi du 5 avril 2016 (Mémorial A 2016-63); entry-into-force decree (Mémorial A 2016-96); administrative arrangement (Mémorial A 2017-458); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit); Articles 2 (Albanian coverage scope: ISSH-administered single-pillar PAYG), 3 (personal scope, verified open-scope per Phase 0 — extra-scrutinised because AL is the only non-Yugoslav-successor in the cluster), 6 (totalisation, non-overlap rule), 14 (third-state aggregation), 15 (LU 1-year minimum gate), 17 (LU calculation paths — autonomous-or-better at 17(1); pro-rata at 17(2)(c); imputation basis at 17(2)(b); 480-month denominator cap at 17(3) — functionally equivalent to BR-LU 16(2)(c) / AR-LU 13(2)(c) / UY-LU 13(2)(c) but in a separate paragraph) of the convention. Authentic languages: French and Albanian (no tiebreaker clause). Audit trail: T15 cluster Phase 0 report, Phase 1 audit, and AL-LU interpretation delta. If you've also worked in Bosnia and Herzegovina, North Macedonia, Montenegro, or Serbia, see those treaties' methodology sections — the dispatcher composes them automatically per the principle of most favourable.
Bosnia and Herzegovina-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and Bosnia and Herzegovina was signed on 8 April 2011 and entered into force on 1 December 2012. LU promulgation: Loi du 13 avril 2012 (Mémorial A 2012-76); entry-into-force decree at Mémorial A 2012-212. Authentic languages: four equally authentic texts — French (LU side) and Bosnian, Croatian, and Serbian (BiH side); the calculator cites the French column (the version published in the LU Mémorial). BA-LU is a Yugoslav-successor treaty: Article 55 abrogates the 1954 LU-Yugoslavia convention in BiH-LU relations; vested rights already liquidated under the 1954 instrument are preserved by Article 55(2). For prospective claimants — the calculator's MVP scope — only the 2011 convention applies. State-level coverage with no sub-entity carve-outs: BiH's pension administration is internally split (PIO/MIO Federation BiH for the Federation entity, PIO Republika Srpska for the RS entity), but Article 2 treats BiH as a single state-level counterparty and the LU engine does not need to model the internal allocation.
BiH coverage scope: state-level single-pillar PAYG, no sub-entity carve-outs. Per Article 2 of the convention, the agreement covers BiH's « assurance de pension et d'invalidité » generically, with no Federation / Republika Srpska / Brčko District distinction in the convention text. The internal allocation between PIO/MIO Federation BiH (Sarajevo) and PIO Republika Srpska (Bijeljina) is BiH's domestic concern; the LU engine does not need to model it. When entering BiH months in the calculator, enter your total BiH coverage months across all sub-entities.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 24 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. BA-LU uses the « Nonobstant… » drafting form (« compte tenu de ces seules périodes, aucun droit n'est acquis ») — different wording from US-LU/AR-LU/BR-LU/CL-LU/UY-LU's « n'atteignent pas un an » form, same operative result. CSS Art 171 via Article 6 requires 120 months of aggregated coverage at age 65 — Luxembourg + BiH periods that don't overlap are added together for this test.
Calculation. When both gates are met, Article 23 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 23(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 23(2). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 23(2) applies and Luxembourg pays the pro-rata amount only. The pro-rata is the theoretical amount (Article 23(2)(a) — LU pension as if the full LU + BiH career had been completed under LU law) multiplied by the LU share of total months (Article 23(2)(c)). Article 23(2)(b) imputation rule: the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to the imputation clauses in every other modern bilateral engine in the fleet).
No convention-level 480-cap clause — LU CSS Art 220 fallback applies. Unlike Albania-Luxembourg Article 17(3), Brazil-Luxembourg Article 16(2)(c), Argentina-Luxembourg Article 13(2)(c), and Uruguay-Luxembourg Article 13(2)(c), the BA-LU convention does not contain an explicit pro-rata-denominator cap inside the calculation article. The convention-defined ratio LU_months / total_months is uncapped at the convention level. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration for a full LU benefit via the theoretical-amount calculation — the engine pays the user no less than LU domestic law would on its own. This is a deliberate, treaty-respecting choice: where the convention is silent on the denominator, the treaty's pro-rata fraction stays at LU_months / (LU_months + BA_months) uncapped, and the LU domestic 480-month max enters at the theoretical-amount stage. Cluster siblings ME-LU, MK-LU, and RS-LU follow the same pattern; AL-LU is the cluster outlier with an explicit Article 17(3) cap.
Accuracy framing. The BA-LU engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 21 (third-state aggregation) by dispatcher independence — when you have Luxembourg + BiH + EU periods, the EU 883/2004 engine and the BA-LU engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Anti-cumulation rules, voluntary continued insurance, posting/secondment provisions, baby-years interactions, the invalidity and survivor branches, healthcare totalisation, and Article 55 transitional-rights handling for pre-2012 claimants are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. The state-level BiH pension administration (with internal allocation between PIO/MIO Federation BiH and PIO Republika Srpska) computes the BiH-side benefit independently.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la Bosnie-Herzégovine, signed 8 April 2011; in force 1 December 2012 — verbatim French text via Légilux (Légilux ELI); LU promulgation Loi du 13 avril 2012 (Mémorial A 2012-76); entry-into-force decree (Mémorial A 2012-212); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation, since BA-LU has no convention-level pro-rata-denominator cap); Articles 2 (BiH coverage scope: state-level « assurance de pension et d'invalidité » with no sub-entity carve-outs per Phase 0 audit), 3 (personal scope, verified open-scope), 6 (totalisation, non-overlap rule), 21 (third-state aggregation), 23 (LU calculation paths — autonomous-or-better at 23(1); pro-rata at 23(2)(c); imputation basis at 23(2)(b); NO convention-level 480-cap), 24 (LU 1-year minimum gate, « Nonobstant » drafting form), 55 (predecessor abrogation: 1954 LU-Yugoslavia convention in BiH-LU relations) of the convention. Authentic languages: French, Bosnian, Croatian, Serbian — four texts equally authentic. Audit trail: T15 cluster Phase 0 report, Phase 1 audit, and BA-LU interpretation delta. If you've also worked in Albania, Montenegro, North Macedonia, or Serbia, see those treaties' methodology sections — the dispatcher composes them automatically per the principle of most favourable.
Montenegro-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and Montenegro was signed on 19 February 2008 and entered into force on 1 May 2009. LU promulgation: Loi du 19 décembre 2008 (Mémorial A 2008-201); entry-into-force decree at Mémorial A 2009-077; administrative arrangement publication delayed to Mémorial A 2016-80 (same Mémorial issue as the MK-LU administrative arrangement). Authentic languages: French and Montenegrin (no tiebreaker clause); the calculator cites the French column. ME-LU is a Yugoslav-successor treaty: Article 55 cleanly abrogates the 2003 LU-Serbia/Montenegro convention in ME-LU relations; vested rights « droits liquidés » under the 2003 instrument are preserved by Article 55(2). The 1954 LU-Yugoslavia link sits separately in Article 54 (family-allowance preservation only — not pensions; old-age pension scope is unaffected).
Montenegrin coverage scope: single-pillar PAYG. Per Article 2 of the convention, the agreement covers Montenegro's « assurance pension » — the public PAYG pension system administered by Fond PIO Crne Gore (the Pension and Invalidity Insurance Fund of Montenegro). When entering Montenegrin months in the calculator, enter your total Fond PIO coverage months.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 24 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. ME-LU uses the « n'atteignent pas un an » drafting form — same operative result as US-LU/AR-LU/BR-LU/CL-LU/UY-LU. CSS Art 171 via Article 8 requires 120 months of aggregated coverage at age 65 — Luxembourg + Montenegrin periods that don't overlap are added together for this test. Note the totalisation article number — Article 8, distinct from the cluster's other treaties (AL/BA/MK at Article 6, RS at Article 8 like ME).
Calculation. When both gates are met, Article 23 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 23(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 23(2). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 23(2) applies and Luxembourg pays the pro-rata amount only. The pro-rata is the theoretical amount (Article 23(2)(a) — LU pension as if the full LU + Montenegrin career had been completed under LU law) multiplied by the LU share of total months (Article 23(2)(c)). Article 23(2)(b) imputation rule: the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount.
No convention-level 480-cap clause — LU CSS Art 220 fallback applies. Unlike Albania-Luxembourg Article 17(3) and the BR/AR/UY 480-cap clauses, the ME-LU convention does not contain an explicit pro-rata-denominator cap inside the calculation article. The convention-defined ratio LU_months / total_months is uncapped at the convention level. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration for a full LU benefit via the theoretical-amount calculation — the engine pays the user no less than LU domestic law would on its own. This is a deliberate, treaty-respecting choice and is shared across the four Yugoslav-successor treaties in the cluster (BA, ME, MK, RS); AL is the cluster outlier with an explicit Article 17(3) cap.
Accuracy framing. The ME-LU engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 20 (third-state aggregation) by dispatcher independence — when you have Luxembourg + Montenegrin + EU periods, the EU 883/2004 engine and the ME-LU engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Anti-cumulation rules, voluntary continued insurance, posting/secondment provisions, baby-years interactions, the invalidity and survivor branches, healthcare totalisation, Article 54 family-allowance preservation under the 1954 Yugoslav instrument, and Article 55 transitional-rights handling for pre-2009 claimants are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. Fond PIO Crne Gore computes the Montenegrin-side benefit independently.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et le Monténégro, signed 19 February 2008; in force 1 May 2009 — verbatim French text via Légilux (Légilux ELI); LU promulgation Loi du 19 décembre 2008 (Mémorial A 2008-201); entry-into-force decree (Mémorial A 2009-077); administrative arrangement Mémorial A 2016-80 (delayed publication, bundled with MK-LU administrative arrangement in the same Mémorial issue); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Articles 2 (Montenegrin coverage scope: Fond PIO-administered single-pillar PAYG), 3 (personal scope, verified open-scope), 8 (totalisation, non-overlap rule), 20 (third-state aggregation), 23 (LU calculation paths — autonomous-or-better at 23(1); pro-rata at 23(2)(c); imputation basis at 23(2)(b); NO convention-level 480-cap), 24 (LU 1-year minimum gate), 54 (1954 LU-Yugoslavia family-allowance preservation only), 55 (predecessor abrogation: 2003 LU-Serbia/Montenegro in ME-LU relations) of the convention. Authentic languages: French and Montenegrin (no tiebreaker clause). Audit trail: T15 cluster Phase 0 report, Phase 1 audit, and ME-LU interpretation delta. If you've also worked in Albania, Bosnia and Herzegovina, North Macedonia, or Serbia, see those treaties' methodology sections — the dispatcher composes them automatically per the principle of most favourable.
North Macedonia-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Republic of (North) Macedonia was signed on 28 November 2006 (Phase 0 errata correction — earlier instance-file references to a 2008 signing date were incorrect; the convention was signed in 2006 and promulgated in LU in 2008) and entered into force on 1 May 2009. LU promulgation: Loi du 19 décembre 2008 (Mémorial A 2008-203); entry-into-force decree at Mémorial A 2009-032; administrative arrangement at Mémorial A 2016-80 (bundled with the ME-LU administrative arrangement in the same Mémorial issue). Authentic languages: French and Macedonian (no tiebreaker clause); the calculator cites the French column. Country-name note: the treaty was signed under the country's name at the time, « République de Macédoine »; the 2018 Prespa Agreement renamed the country « République de Macédoine du Nord » (Republic of North Macedonia). Treaty validity is unaffected; methodology copy uses the current name. MK-LU is a Yugoslav-successor treaty: Article 53 cleanly abrogates the 1954 LU-Yugoslavia convention in MK-LU relations, with Article 53(3) explicit on pending-claim treatment under predecessor rules.
Macedonian coverage scope: single-pillar PAYG. Per Article 2 of the convention, the agreement covers North Macedonia's « assurance vieillesse et invalidité (vieillesse, invalidité, décès) » — the public PAYG pension and disability insurance system administered by Fond na PIOM (Фонд на пензиското и инвалидското осигурување на Северна Македонија), the Pension and Disability Insurance Fund of North Macedonia. When entering Macedonian months in the calculator, enter your total Fond na PIOM coverage months.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 25 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. MK-LU uses the « Nonobstant… » drafting form (« compte tenu de ces seules périodes, aucun droit n'est acquis ») — same drafting form as BA-LU Article 24, different from the « n'atteignent pas un an » form used elsewhere; same operative result. CSS Art 171 via Article 6 requires 120 months of aggregated coverage at age 65 — Luxembourg + Macedonian periods that don't overlap are added together for this test.
Calculation. When both gates are met, Article 24 sets two paths via a split max-of drafting unique within the cluster: Article 24(1) computes the autonomous LU-only amount and Article 24(3) sets the comparison rule (« the higher of the autonomous amount and the pro-rata amount »); the autonomous-or-better evaluation lives across both subparagraphs. If you qualify on Luxembourg periods alone (≥ 120 months), the engine pays the higher of (a) the autonomous amount per 24(1) and (b) the pro-rata amount per 24(2). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 24(2) applies and Luxembourg pays the pro-rata amount only. Note the numbered sub-paragraph drafting: Article 24(2) breaks into numbered sub-paragraphs (1)/(2)/(3) rather than the lettered (a)/(b)/(c) used by every other treaty in the cluster — Article 24(2)(1) is the theoretical amount, Article 24(2)(2) is the imputation rule (LU institution uses only your Luxembourg-recorded earnings basis), Article 24(2)(3) is the pro-rata ratio. Algorithmically identical to the cluster siblings.
No convention-level 480-cap clause — LU CSS Art 220 fallback applies. Unlike Albania-Luxembourg Article 17(3) and the BR/AR/UY 480-cap clauses, the MK-LU convention does not contain an explicit pro-rata-denominator cap inside the calculation article. The convention-defined ratio LU_months / total_months (Article 24(2)(3)) is uncapped at the convention level. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration for a full LU benefit via the theoretical-amount calculation — the engine pays the user no less than LU domestic law would on its own. Shared across the four Yugoslav-successor treaties in the cluster (BA, ME, MK, RS); AL is the cluster outlier with an explicit Article 17(3) cap.
Accuracy framing. The MK-LU engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 21 (third-state aggregation) by dispatcher independence — when you have Luxembourg + Macedonian + EU periods, the EU 883/2004 engine and the MK-LU engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Anti-cumulation rules, voluntary continued insurance, posting/secondment provisions, baby-years interactions, the invalidity and survivor branches, healthcare totalisation, and Article 53 transitional-rights handling for pre-2009 claimants (Article 53(3) explicit on pending-claim treatment under predecessor 1954 Yugoslav rules) are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. Fond na PIOM computes the Macedonian-side benefit independently.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République de Macédoine (now North Macedonia), signed 28 November 2006 (Phase 0 errata: not 2008); in force 1 May 2009 — verbatim French text via Légilux (Légilux ELI); LU promulgation Loi du 19 décembre 2008 (Mémorial A 2008-203); entry-into-force decree (Mémorial A 2009-032); administrative arrangement Mémorial A 2016-80 (bundled with ME-LU administrative arrangement); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Articles 2 (Macedonian coverage scope: Fond na PIOM-administered single-pillar PAYG), 3 (personal scope, verified open-scope), 6 (totalisation, non-overlap rule), 21 (third-state aggregation), 24 (LU calculation paths — split max-of drafting: 24(1) autonomous + 24(3) comparison rule; pro-rata at 24(2)(3); imputation basis at 24(2)(2); NO convention-level 480-cap), 25 (LU 1-year minimum gate, « Nonobstant » drafting form), 53 (predecessor abrogation: 1954 LU-Yugoslavia in MK-LU relations; 53(3) explicit on pending-claim treatment) of the convention. Authentic languages: French and Macedonian (no tiebreaker clause). Audit trail: T15 cluster Phase 0 report, Phase 1 audit, and MK-LU interpretation delta. If you've also worked in Albania, Bosnia and Herzegovina, Montenegro, or Serbia, see those treaties' methodology sections — the dispatcher composes them automatically per the principle of most favourable.
Serbia-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Republic of Serbia was signed on 7 June 2013 and entered into force on 1 November 2014. LU promulgation: Loi du 18 juillet 2014 (Mémorial A 2014-148); entry-into-force decree at Mémorial A 2014-190. Authentic languages: French and Serbian (no tiebreaker clause); the calculator cites the French column. RS-LU sits in a unique two-layer predecessor lineage: 1954 → 2003 → 2013. Article 52 of the 2013 convention abrogates the 2003 LU-Serbia/Montenegro convention in RS-LU relations and explicitly references both the 1954 LU-Yugoslavia convention AND the 2003 instrument as predecessors whose vested rights (« droits liquidés ») are protected (Article 52(2)). This is the only Western Balkans treaty with two-layer abrogation language in a single article (BA/MK address only the 1954 Yugoslav convention; ME addresses only the 2003 Serbia/Montenegro convention via Article 55, with the 1954 link sitting separately in Article 54 for family-allowance preservation only). Phase 0's HARD STOP gate on operative-rule preservation was cleared: Article 52 protects vested rights only, not operative-rule provisions for new claims.
Serbian coverage scope: single-pillar PAYG. Per Article 2 of the convention, the agreement covers Serbia's « assurance pension et invalidité » — the public PAYG pension and disability insurance system administered by PIO Fond Republike Srbije (the Pension and Disability Insurance Fund of the Republic of Serbia). When entering Serbian months in the calculator, enter your total PIO Fond coverage months.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 24 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. RS-LU uses the « n'atteignent pas un an » drafting form — same operative result as US-LU/AR-LU/BR-LU/CL-LU/UY-LU and the cluster siblings AL/ME. CSS Art 171 via Article 8 requires 120 months of aggregated coverage at age 65 — Luxembourg + Serbian periods that don't overlap are added together for this test. Note the totalisation article number — Article 8 (matching ME-LU; AL/BA/MK use Article 6).
Calculation. When both gates are met, Article 23 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 23(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 23(2). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 23(2) applies and Luxembourg pays the pro-rata amount only. Note the numbered sub-paragraph drafting: Article 23(2) breaks into numbered sub-paragraphs (1)/(2)/(3) (matching MK-LU Article 24(2) drafting; BA/ME use lettered (a)/(b)/(c)). Article 23(2)(1) is the theoretical amount (LU pension as if the full LU + Serbian career had been completed under LU law); Article 23(2)(2) is the imputation rule (LU institution uses only your Luxembourg-recorded earnings basis); Article 23(2)(3) is the pro-rata ratio. Algorithmically identical to the cluster siblings.
No convention-level 480-cap clause — LU CSS Art 220 fallback applies. Unlike Albania-Luxembourg Article 17(3) and the BR/AR/UY 480-cap clauses, the RS-LU convention does not contain an explicit pro-rata-denominator cap inside the calculation article. The convention-defined ratio LU_months / total_months (Article 23(2)(3)) is uncapped at the convention level. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration for a full LU benefit via the theoretical-amount calculation — the engine pays the user no less than LU domestic law would on its own. Shared across the four Yugoslav-successor treaties in the cluster (BA, ME, MK, RS); AL is the cluster outlier with an explicit Article 17(3) cap.
Accuracy framing. The RS-LU engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 20 (third-state aggregation) by dispatcher independence — when you have Luxembourg + Serbian + EU periods, the EU 883/2004 engine and the RS-LU engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Anti-cumulation rules, voluntary continued insurance, posting/secondment provisions, baby-years interactions, the invalidity and survivor branches, healthcare totalisation, and Article 52 transitional-rights handling for pre-2014 claimants (two-layer 1954 Yugoslav and 2003 Serbia/Montenegro vested-rights protection) are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. PIO Fond Republike Srbije computes the Serbian-side benefit independently.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République de Serbie, signed 7 June 2013; in force 1 November 2014 — verbatim French text via Légilux (Légilux ELI); LU promulgation Loi du 18 juillet 2014 (Mémorial A 2014-148); entry-into-force decree (Mémorial A 2014-190); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Articles 2 (Serbian coverage scope: PIO Fond-administered single-pillar PAYG), 3 (personal scope, verified open-scope), 8 (totalisation, non-overlap rule), 20 (third-state aggregation), 23 (LU calculation paths — autonomous-or-better at 23(1); pro-rata at 23(2)(3); imputation basis at 23(2)(2); numbered sub-paragraph drafting matches MK-LU Article 24(2); NO convention-level 480-cap), 24 (LU 1-year minimum gate), 52 (predecessor abrogation: BOTH 2003 LU-Serbia/Montenegro AND 1954 LU-Yugoslavia in RS-LU relations — unique two-layer lineage in the cluster; HARD STOP gate cleared per Phase 0 audit) of the convention. Authentic languages: French and Serbian (no tiebreaker clause). Audit trail: T15 cluster Phase 0 report, Phase 1 audit, and RS-LU interpretation delta. If you've also worked in Albania, Bosnia and Herzegovina, Montenegro, or North Macedonia, see those treaties' methodology sections — the dispatcher composes them automatically per the principle of most favourable.
Moldova-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Republic of Moldova was signed on 14 June 2010 in Luxembourg and entered into force on 1 January 2012. LU promulgation: Loi du 28 avril 2011 (Mémorial A 2011-93, 12 May 2011); entry-into-force decree at Mémorial A 2011-239, 23 November 2011, p. 4022; administrative arrangement signed 25 January 2012 and applied operationally from 1 January 2012. Authentic languages: French and Moldovan / Romanian (no tiebreaker clause); the calculator cites the French column as published in the LU Mémorial. MD-LU is a greenfield treaty — no predecessor convention is abrogated, distinguishing it from the Yugoslav-successor cluster (BA, ME, MK, RS) and from BR-LU's 1965 instrument abrogation. Despite geographic adjacency to the Western Balkans, MD's 2010 instrument was negotiated independently of the post-Yugoslav framework; CNAS shares no operational lineage with the Western Balkans agencies.
Moldovan coverage scope: single-pillar PAYG. Per Article 2(1)(b) of the convention, the agreement covers Moldova's « pensions de vieillesse » — the public pension system administered by CNAS (Casa Naţională de Asigurări Sociale, Moldova's National Social Insurance House). Per the Luxembourg IGSS guidance letter of 29 December 2011, CNAS is the single Moldovan institution under the convention — both organisme de liaison and institution compétente, including for postings under Articles 9–14 (« du côté moldave une seule institution, la Caisse nationale d'assurances sociales (Casa Naţională de Asigurări Sociale), fait fonction d'organisme de liaison et d'institution compétente, aussi en matière de détachements »). When entering Moldovan months in the calculator, enter your total CNAS coverage months.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 19 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension. MD-LU uses the « n'atteint pas une année » drafting form — same operative result as US-LU/AR-LU/BR-LU/CL-LU/UY-LU and the cluster siblings AL/ME/RS. CSS Art 171 via Article 6 requires 120 months of aggregated coverage at age 65 — Luxembourg + Moldovan periods that don't overlap are added together for this test (Article 6 « pour autant qu'elles ne se superposent pas »).
Calculation. When both gates are met, Article 18 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 18(1)+(2) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 18(3). Important interpretive note: the convention text of Article 18(2) literally reads as autonomous-only when LU alone qualifies. The IGSS guidance letter of 29 December 2011 explicitly clarifies LU operational practice — « Comme pour l'application de tous les autres instruments bi- ou multilatéraux souscrits par le Luxembourg, le double calcul est à effectuer, bien que le texte de la convention ne le prévoie pas explicitement. Le libellé de l'article 18 est un texte de compromis car, contrairement au Luxembourg, la Moldavie ne fait pas de double calcul si un droit autonome existe. » Luxembourg performs the double calculation under all of its bilateral instruments. The calculator applies LU practice and pays the higher of autonomous and pro-rata. If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 18(3) applies and Luxembourg pays the pro-rata amount only. The pro-rata is the theoretical amount (Article 18(3)(a) — LU pension as if the full LU + Moldovan career had been completed under LU law) multiplied by the LU share of total months (Article 18(3)(b)).
No convention-level 480-cap on the pro-rata denominator — LU CSS Art 220 fallback applies. Article 18(3)(c) does contain an in-convention cap clause, but the cap explicitly attaches to alinéa a) (the theoretical-amount calculation) via the phrase « en appliquant l'alinéa a) du présent paragraphe ». The pro-rata denominator (alinéa b)) is uncapped at the convention level — the convention-defined ratio LU_months / total_months is computed without clamping. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration for a full LU benefit via the theoretical-amount calculation — functionally redundant with the convention's 18(3)(c) clause; the engine pays the user no less than LU domestic law would on its own. Behaviour matches ME-LU (no in-convention denominator cap); contrast BR-LU 16(2)(c) and UY-LU 13(2)(c) which DO cap the pro-rata denominator at the convention level.
Accuracy framing. The MD-LU engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles and the IGSS guidance letter, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 17 (third-state aggregation) by dispatcher independence — when you have Luxembourg + Moldovan + EU periods, the EU 883/2004 engine and the MD-LU engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Article 20 baby-years particularity conditions the Luxembourg child-raising credit on the user having last completed insurance periods under LU legislation before the child's birth or adoption; the engine emits a caveat directing affected users to confirm with CCSS. Anti-cumulation rules (Article 8 — paragraph 2 carves out invalidity/old-age/survivor benefits from non-cumul; no engine gate), voluntary continued insurance (Article 7), posting/secondment provisions (Articles 9–14), Article 15 special-regime totalisation, Article 16 reference-period extension (invalidity/survivors), and the invalidity and survivor branches (Articles 18 and beyond when applied to those branches), healthcare totalisation, and family-benefit branch (Articles 21–22) are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. CNAS computes the Moldovan-side benefit independently.
Sources: Convention entre le Grand-Duché de Luxembourg et la République de Moldavie en matière de sécurité sociale, signed 14 June 2010 in Luxembourg; in force 1 January 2012 — verbatim French text via Légilux (Légilux ELI); LU promulgation Loi du 28 avril 2011 (Mémorial A 2011-93, 12 May 2011); entry-into-force decree at Mémorial A 2011-239, 23 November 2011, p. 4022; administrative arrangement signed 25 January 2012; IGSS guidance letter of 29 December 2011 (Inspection générale de la sécurité sociale, ref. 29122011-DEF2-70UT — interpretive primary source preserved at the project research repository); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Articles 2 (Moldovan coverage scope: CNAS-administered single-pillar PAYG), 3 (personal scope, verified open-scope per T11 BR-LU verbatim-audit precedent — confirmed by IGSS letter independently), 6 (totalisation, non-overlap rule), 17 (third-state aggregation), 18 (LU calculation paths — Article 18(1)+(2) autonomous-or-better per IGSS guidance, Article 18(3) pro-rata aggregation, Article 18(3)(c) cap on theoretical amount only — NO convention-level pro-rata-denominator cap), 19 (LU 1-year minimum gate), 20 (baby-years particularity — caveat emitted when user has both baby_years and Moldovan periods) of the convention. Authentic languages: French and Moldovan / Romanian (no tiebreaker clause). Audit trail: Phase 0 report, Phase 1 audit, and MD-LU interpretation doc. If you've also worked in EU/EEA/Switzerland/UK or in another bilateral-treaty country, see the relevant methodology sections — the dispatcher composes them automatically per the principle of most favourable.
Morocco-Luxembourg Bilateral
The Convention on Social Security between the Government of the Grand Duchy of Luxembourg and the Government of the Kingdom of Morocco was signed in Luxembourg on 2 October 2006 and entered into force on 1 February 2013. LU promulgation: Loi du 1er août 2007 (Mémorial A-146 of 17 August 2007, p. 2654); entry-into-force avis at Mémorial A 2013-8 of 16 January 2013, p. 145; administrative arrangement signed 17 October 2017, Mémorial A-942 of 26 October 2017. The closing provision reads « FAIT à Luxembourg, le 2 octobre 2006, en double exemplaire rédigés en langues française et arabe, chacun des textes faisant également foi » — French and Arabic are equally authentic, with no tiebreaker clause. The calculator cites the French column (the version published in the Luxembourg Mémorial). The 6.5-year gap between approval (2007) and entry-into-force (2013) is the longest in the inventory; Phase 0 audited the 2013 entry-into-force avis and confirmed it introduces no operative changes. The administrative arrangement, signed nearly four years after entry-into-force, is purely procedural — codifying liaison bodies, formulaires (L/M 1 through L/M 23), and reimbursement modalities.
First nationality-restricted bilateral engine confirmed in production. After seven consecutive per-treaty audits (BR / ME / MK / RS / BA / AL / MD) found their conventions to be open-scope despite CNAP's restricted classification, the T17 Phase 1 verbatim audit of MA-LU Article 2 confirmed a real nationality restriction. Article 2 (Champ d'application personnel), verbatim: « La présente convention s'applique aux travailleurs qui sont ou ont été soumis aux législations visées à l'article 4 qui sont des ressortissants d'une des Parties contractantes ou bien des réfugiés résidant sur le territoire d'une des Parties, ainsi qu'aux membres de leur famille et à leurs survivants. » Three categories of qualifying persons: (1) workers who are nationals of either contracting party (LU + MA); (2) refugees residing in either contracting party's territory (per the 1951 Geneva Convention reference in Article 1); (3) family members and survivors of those in (1) and (2). Article 3 is the equal-treatment principle applied to the Article 2 cohort — not a scope expansion. The calculator's applies_to gate enforces a two-step check: nationality is verified first against the qualifying set, then country-presence (any MA foreign period or MA relocation country). If your nationality doesn't qualify, the MA-LU path is silently absent from the result panel.
Operational scope: {MA} ∪ EU-27. The convention text alone restricts to LU + MA + refugees + family members. Per research/cnap/reglements/nationality-restrictions.md §5 default rule, the operational qualifying-nationality set extends to all EU-27 nationals via the EU non-discrimination overlay — Luxembourg as an EU member state cannot grant a treaty path to its own nationals while denying it to other EU-27 nationals. The qualifying set therefore includes MA + the 27 EU member states (LU is in EU-27 by default). Phase 1 confirmed no broader-than-EU-27 language: the convention text contains no references to EEA / EFTA / Switzerland / United Kingdom or any other state-grouping beyond the contracting parties, so the EU_27_CODES default scope is preserved. Refugees and family members are covered by Article 2 but not modelled in the engine's nationality gate (the calculator does not collect refugee status or family-relationship metadata) — affected users should contact CCSS for an authoritative determination.
Moroccan coverage scope: multi-pillar (CNSS + CMR + RCAR). Per Article 4(1)(a) of the convention, the agreement covers (i) the régime général de sécurité sociale administered by CNSS (Caisse Nationale de Sécurité Sociale) for private-sector workers; (ii) the work-accident and occupational-illness regime; (iii) mandatory health insurance (AMO); (iv) the CMR (Caisse Marocaine de Retraite) regime — long-term benefits for State officials; and (v) the RCAR (Régime Collectif d'Allocations de Retraite) regime — public-establishment and local-collectivity employees. For old-age pensions, all three pillars (CNSS + CMR + RCAR) feed into the totalization. When entering Moroccan months in the calculator, count your total Moroccan-creditable months across whichever pillar(s) apply.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 20 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (« Si la durée totale des périodes d'assurance accomplies sous la législation d'une Partie contractante, n'atteint pas douze mois, l'institution compétente de cette Partie n'est pas tenue d'accorder des prestations au titre desdites périodes »). Morocco-Luxembourg has the 1-year LU minimum gate — same shape as US-LU Article 17, CA-LU Article IX bis(1), BR-LU Article 17. CSS Art 171 via Article 8 requires 120 months of aggregated coverage at age 65 — Luxembourg + Moroccan periods that don't overlap are added together for this test (« pour autant qu'elles ne se superposent pas »).
Calculation. When both gates are met, Article 24 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 24(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 24(2) — verbatim « Le montant le plus élevé est seul retenu ». If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 24(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Moroccan career had been completed under LU law, per Article 24(2)(a)) multiplied by your LU share of total months (Article 24(2)(c)). Article 24(2)(b) imputation rule, verbatim: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), CL-LU 17(2)(c), AR-LU 13(2)(b), UY-LU 13(2)(b)).
No convention-level 480-cap clause — distinct from Brazil-Luxembourg / Argentina-Luxembourg / Uruguay-Luxembourg / Albania-Luxembourg. Article 24(2)(c) of MA-LU reads « sur la base de ce montant théorique l'institution fixe ensuite le montant effectif de la pension au prorata de la durée des périodes d'assurance accomplies sous la législation qu'elle applique par rapport à la durée totale des périodes d'assurance accomplies sous les législations des deux Parties contractantes » — and terminates there, with no closing capping sentence. Compare BR-LU Article 16(2)(c)'s additional sentence: « Cette durée totale est plafonnée à la durée maximale éventuellement requise par la législation qu'elle applique pour le bénéfice d'une prestation complète » — absent in MA-LU. The MA-LU pro-rata fraction therefore uses the unbounded denominator: LU_months / (LU_months + MA_months), with no min(total, 480) substitution. Phase 3's regression test test_no_pro_rata_cap_at_aggregated_above_480 pins this behaviour — at 60 LU + 480 MA = 540 aggregated months, the engine returns B × 60/540 (NOT B × 60/480). Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration for a full LU benefit via the theoretical-amount calculation, so the engine pays the user no less than LU domestic law would on its own.
Accuracy framing. The Morocco-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 24(3) (third-state extension) and Article 21 (third-state totalisation) by dispatcher independence — when you have Luxembourg + Moroccan + EU periods, the EU 883/2004 engine and the Morocco-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Article 22(2) (baby-years; "last LU coverage before birth/adoption" condition — caveat emitted by the engine when both baby-years and MA periods are present), Article 25 (cross-border minimum-pension supplement, a CSS-level computation post-engine), Article 26 (Moroccan polygamous-spouse survivor provision, splits a single LU survivor pension across multiple spouses qualifying under Moroccan law), and the invalidity / survivor branches are not modelled in the MVP — the calculator targets age-65 old-age pensions only. Refugees covered by Article 2 are not modelled in the engine's nationality gate (the calculator does not collect refugee status); affected users should contact CCSS for authoritative determination. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. The Moroccan institutions — CNSS (private sector), CMR (State officials), or RCAR (public establishments / local collectivities) — compute the Moroccan-side benefit independently under Articles 8 and 24 of the convention.
Sources: Convention de sécurité sociale entre le Gouvernement du Grand-Duché de Luxembourg et le Gouvernement du Royaume du Maroc, signed 2 October 2006 (Luxembourg); in force 1 February 2013 — verbatim French text via the Légilux ELI URL of Loi du 1er août 2007 (Légilux ELI); LU promulgation Mémorial A-146 (17 August 2007, p. 2654); entry-into-force avis Mémorial A 2013-8 (16 January 2013, p. 145); administrative arrangement signed 17 October 2017, Mémorial A-942 (26 October 2017) — purely procedural per T17 Phase 0 audit; CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Article 2 (personal scope — restricted to nationals of the contracting parties + refugees + family members; T17 first nationality-restricted engine confirmed), Article 3 (equal-treatment principle for the Article 2 cohort), Article 4(1)(a) (Moroccan coverage scope: CNSS + CMR + RCAR multi-pillar), Article 4(1)(b)(iv) (LU coverage scope: pension insurance for old-age, invalidity, survivors), Article 8 (totalisation, non-overlap rule), Article 20 (LU 1-year minimum gate), Article 21 (third-state totalisation), Article 22 (prior-insurance-condition + last-LU-coverage requirement), Article 23 (reference-period extension), Article 24 (LU calculation paths — autonomous-or-better at 24(1) per « Le montant le plus élevé est seul retenu »; pro-rata at 24(2)(c) — NO 480-cap closing sentence, distinct from BR/AR/UY/AL; imputation basis at 24(2)(b)), Article 24(3) (third-state extension), Article 25 (cross-border minimum-pension supplement, out of MVP), Article 26 (Moroccan polygamous-spouse survivor provision, out of MVP — survivor pensions not modelled), Article 53 (entry-into-force, automatic upon mutual notification) of the convention. Authentic languages: French and Arabic (both equally authentic; no tiebreaker clause). Audit trail: T17 Phase 0 report, Phase 1 audit, and MA-LU interpretation doc.
Tunisia-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Tunisian Republic was signed in Tunis on 30 November 2010 and entered into force on 18 February 2013. LU promulgation: Loi du 16 mars 2012 (Mémorial A 2012-52 of 23 March 2012, p. 604); entry-into-force decree at Mémorial A 2013-42 of 8 March 2013, p. 588; administrative arrangement signed 6 May 2011 (before EIF, during the inter-governmental implementation-prep window). The closing provision of Article 59 reads « FAIT à Tunis le 30 novembre 2010 en double exemplaire rédigés en langues française et arabe, chacun des textes faisant également foi » — French and Arabic are equally authentic, with no tiebreaker clause. The calculator cites the French column (the version published in the Luxembourg Mémorial). The administrative arrangement was audited end-to-end as part of T18 Phase 0 — purely procedural, codifying liaison bodies, formulaires, and reimbursement modalities.
Second nationality-restricted bilateral engine confirmed in production (after MA-LU); first with an explicit in-treaty EU-27 extension provision. The T18 Phase 1 verbatim audit of TN-LU Article 2 confirmed a real nationality restriction. Article 2 (Champ d'application personnel), verbatim: « La présente convention s'applique aux personnes qui sont ou ont été soumises aux législations visées à l'article 4 et qui sont des ressortissants (voir annexe) d'un des Etats contractants ou bien des apatrides ou des réfugiés résidant sur le territoire d'un des Etats, ainsi qu'aux membres de leur famille et à leurs survivants. » Four categories of qualifying persons: (1) persons subject to the Article 4 legislation who are nationals of either contracting party (LU + TN), with the « voir annexe » parenthetical pointing to the Annexe Gottardo declaration (see below); (2) apatrides (stateless persons) per the 1954 New York Convention reference in Article 1.18 — TN-LU is more explicit than MA-LU on apatride coverage; (3) refugees residing in either contracting party's territory (per the 1951 Geneva Convention reference in Article 1.17); (4) family members and survivors of those in (1)–(3). Article 3 is the equal-treatment principle applied to the Article 2 cohort — not a scope expansion. The calculator's applies_to gate enforces a two-step check: nationality is verified first against the qualifying set, then country-presence (any TN foreign period or TN relocation country). If your nationality doesn't qualify, the TN-LU path is silently absent from the result panel.
Annexe — Gottardo declaration (explicit in-treaty EU-27 extension). Verbatim: « DÉCLARATION DU GRAND-DUCHÉ DE LUXEMBOURG. Le Gouvernement luxembourgeois est conscient de ses obligations communautaires issues de la jurisprudence de la Cour de Justice européenne dans l'affaire GOTTARDO (référence C-55/00) et appliquera la présente convention sans distinction de nationalité pour les ressortissants de l'Union européenne, pour autant que ceci n'impose pas de charge à la Partie tunisienne. » The CJEU's GOTTARDO judgment (Case C-55/00, ECLI:EU:C:2002:16) held that an EU member state must apply a bilateral social-security agreement to all EU nationals on pain of nationality discrimination contrary to EU primary law. By incorporating the Gottardo principle in the convention's annex, Luxembourg makes the EU-27 extension a convention-level commitment rather than a unilateral operational practice — distinct from MA-LU where the EU-27 extension flows from EU non-discrimination doctrine alone. The cost-allocation reservation (« pour autant que ceci n'impose pas de charge à la Partie tunisienne ») means LU bears any administrative cost; it does NOT narrow the nationality scope. From the calculator's perspective an EU-27 national qualifies for the TN-LU path on the same footing as a Tunisian national.
Operational scope: {TN} ∪ EU-27. Anchored in the convention text itself (Article 2 + Annexe), not in defaulted doctrine. The qualifying set therefore includes TN + the 27 EU member states (LU is in EU-27 by default). Phase 1 confirmed no broader-than-EU-27 language: the Annexe Gottardo declaration is strictly limited to « ressortissants de l'Union européenne », and the rest of the convention text contains no references to EEA / EFTA / Switzerland / United Kingdom or any other state-grouping beyond the contracting parties, so the EU_27_CODES default scope is preserved. Apatrides, refugees, and family members are covered by Article 2 but not modelled in the engine's nationality gate (the calculator does not collect statelessness, refugee status, or family-relationship metadata) — affected users should contact CCSS for an authoritative determination.
Tunisian coverage scope: CNSS + public-sector regime. Per Article 4(1)(a.1) of the convention, the agreement covers Tunisia's general social-security regime applicable to salaried, non-salaried, and assimilated workers — administered by CNSS (Caisse Nationale de Sécurité Sociale); this includes the invalidity, old-age, and survivors insurance branch (Article 4(1)(a.1)(iii)). Article 4(1)(a.2) covers the public-sector regime in parallel. Single-pillar from the calculator's perspective: when entering Tunisian months in the calculator, count your total Tunisian-creditable months across whichever scheme(s) applied.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 24 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (« Si la durée totale des périodes d'assurance accomplies sous la législation d'un Etat contractant n'atteint pas douze mois, l'institution compétente de cet Etat n'est pas tenue d'accorder des prestations à moins que lesdites périodes n'ouvrent droit à elles seules à une prestation au titre de cette législation »). Tunisia-Luxembourg has the 1-year LU minimum gate — same shape as US-LU Article 17, CA-LU Article IX bis(1), BR-LU Article 17, MA-LU Article 20. CSS Art 171 via Article 9 requires 120 months of aggregated coverage at age 65 — Luxembourg + Tunisian periods that don't overlap are added together for this test (« pour autant qu'elles ne se superposent pas »).
Calculation. When both gates are met, Article 27 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 27(1) applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 27(2) — verbatim « Le montant le plus élevé est seul retenu ». If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 27(2) applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Tunisian career had been completed under LU law, per Article 27(2)(a)) multiplied by your LU share of total months (Article 27(2)(c)). Article 27(2)(b) imputation rule, verbatim: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), MA-LU 24(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b)).
Convention-level 480-cap clause — same shape as Brazil-Luxembourg; distinct from Morocco-Luxembourg. Article 27(2)(c) of TN-LU reads « sur la base de ce montant théorique l'institution fixe ensuite le montant effectif de la pension au prorata de la durée des périodes d'assurance accomplies sous la législation qu'elle applique par rapport à la durée totale des périodes d'assurance accomplies sous les législations des deux Etats contractants. Cette durée totale est plafonnée à la durée maximale éventuellement requise par la législation qu'elle applique pour le bénéfice d'une pension complète. » The closing capping sentence (« Cette durée totale est plafonnée… ») is present in TN-LU, identical wording to BR-LU 16(2)(c). The TN-LU pro-rata fraction therefore uses the capped denominator: LU_months / min(total_months, 480), where 480 (= 40 years) is Luxembourg's max-required duration for a full benefit (CSS Art 220). Phase 3's regression test test_pro_rata_cap_at_aggregated_above_480 pins this behaviour — at 60 LU + 480 TN = 540 aggregated months, the engine returns B × 60 / 480 (NOT B × 60 / 540). TN-LU is the first per-treaty engine to combine a nationality gate (MA-LU pattern) with a pro-rata cap (BR-LU pattern) — an architecturally hybrid engine.
Article 58 — family-allowance transitional preservation (out of MVP scope). Article 57 of the 2010 convention abrogates the earlier 23 April 1980 LU-TN convention and Special Protocol, « sous réserve de la disposition transitoire en matière d'allocations familiales prévue à l'article 58 de la présente convention ». Article 58 verbatim: « Pour les enfants nés avant l'entrée en vigueur de la présente convention, et qui ouvrent un droit aux allocations familiales en application des articles 27 à 30 de la convention entre le Grand-Duché de Luxembourg et la République Tunisienne sur la sécurité sociale et le Protocole spécial, du 23 avril 1980, ce droit est maintenu pour autant que les conditions d'attribution prévues par la législation de l'Etat compétent soient remplies. » The preserved sub-rule covers family allowances (Articles 27-30 of the abrogated 1980 instrument) for children born before EIF (18 February 2013) — NOT old-age pensions. The instance file and secu.lu metadata both phrased this as « Article 58 of the 1980 convention is preserved » — a misreading; Phase 0 §4 establishes the correct framing: Article 58 is in the 2010 convention itself and concerns family allowances. Article 58 has no impact on current user old-age calculations. Affected users (children of TN/LU nationals born before 18 February 2013 with potential family-allowance entitlements under the 1980 instrument) should contact CCSS directly.
Accuracy framing. The Tunisia-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 27(3) (third-state extension) and Article 23(4) (third-state totalisation) by dispatcher independence — when you have Luxembourg + Tunisian + EU periods, the EU 883/2004 engine and the Tunisia-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Article 25(2) (baby-years; "last LU coverage" condition — caveat emitted by the engine when both baby-years and TN periods are present), Article 28 (cross-border minimum-pension supplement, a CSS-level computation post-engine), Article 29 (transformation of invalidity into old-age pension — invalidity branch out of MVP), Article 58 (family-allowance transitional preservation — out of MVP, see above), and the invalidity / survivor branches are not modelled — the calculator targets age-65 old-age pensions only. Apatrides and refugees covered by Article 2 are not modelled in the engine's nationality gate (the calculator does not collect statelessness or refugee status); affected users should contact CCSS for authoritative determination. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. The Tunisian counterpart agency CNSS computes the Tunisian-side benefit independently under Articles 9 and 27 of the convention.
Sources: Convention de sécurité sociale entre le Grand-Duché de Luxembourg et la République Tunisienne, signed 30 November 2010 (Tunis); in force 18 February 2013 — verbatim French text via the Légilux ELI URL of Loi du 16 mars 2012 (Légilux ELI); LU promulgation Mémorial A 2012-52 (23 March 2012, p. 604); entry-into-force decree Mémorial A 2013-42 (8 March 2013, p. 588); administrative arrangement signed 6 May 2011 — purely procedural per T18 Phase 0 audit; CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — invoked by Article 27(2)(c) « plafonnée » trailer); Article 2 (personal scope — restricted to nationals of the contracting parties + apatrides + refugees + family members; T18 second nationality-restricted engine confirmed), Article 3 (equal-treatment principle for the Article 2 cohort), Article 4(1)(a) (Tunisian coverage scope: CNSS + public-sector regime), Article 4(1)(b)(iv) (LU coverage scope: pension insurance for old-age, invalidity, survivors), Article 9 (totalisation, non-overlap rule), Article 23 (special-regime totalisation + third-state extension at 23(4)), Article 24 (LU 1-year minimum gate), Article 25 (prior-insurance-condition + last-LU-coverage requirement), Article 26 (reference-period extension), Article 27 (LU calculation paths — autonomous-or-better at 27(1) per « Le montant le plus élevé est seul retenu »; pro-rata at 27(2)(c) WITH 480-cap closing sentence, same shape as BR-LU 16(2)(c); imputation basis at 27(2)(b)), Article 27(3) (third-state extension), Article 28 (cross-border minimum-pension supplement, out of MVP), Article 29 (invalidity-to-old-age transformation, out of MVP), Article 55 (transitional rights revision), Article 57 (abrogation of the 1980 LU-TN convention except Article 58 family-allowance preservation), Article 58 (family-allowance transitional preservation — preserves Articles 27-30 of the 1980 instrument for pre-EIF children; out of old-age MVP scope), Article 59 (entry-into-force, automatic upon mutual notification), and the Annexe — Déclaration du Grand-Duché de Luxembourg (Gottardo declaration citing CJEU Case C-55/00, explicit in-treaty EU-27 extension provision) of the convention. Authentic languages: French and Arabic (both equally authentic; no tiebreaker clause). Audit trail: T18 Phase 0 report, Phase 1 audit, and TN-LU interpretation doc.
Cape Verde-Luxembourg Bilateral
The Convention on Social Security between Luxembourg and Cape Verde was signed in Luxembourg on 24 May 1989 and entered into force on 1 August 1992. LU promulgation: Loi du 28 avril 1992 (Mémorial A-N°28 of 11 May 1992, p. 909); the administrative arrangement (Protocole spécial + Arrangement administratif) was annexed in the same Mémorial publication, p. 920. The closing provision reads « FAIT à Luxembourg, le 24 mai 1989, en double exemplaire, en langues française et portugaise, les deux textes faisant également foi » — French and Portuguese are equally authentic, with no tiebreaker clause. The calculator cites the French column (the version published in the Luxembourg Mémorial). CV-LU is the oldest treaty in the LU bilateral inventory, pre-dating EU 883/2004 by 14 years and the binding CJEU GOTTARDO judgment (Case C-55/00, 2002) by 13 years. Phase 0 confirmed zero avenants in the 34 years since signing — the 1989 base text is the operative text.
Third nationality-restricted bilateral engine confirmed in production. CV-LU closes the BR/CV/MA/TN cohort audit at 3/4 restricted (Brazil being the modern-instrument outlier per T11). The T19 Phase 1 verbatim audit of Article 2 §1 (Champ d'application personnel) confirmed a real nationality restriction. Verbatim: « Les dispositions de la présente Convention sont applicables aux personnes qui sont ou ont été soumises à la législation de l'une des Parties contractantes et qui sont des ressortissants de l'une de ces Parties, ainsi qu'aux membres de leurs familles et à leurs survivants. » The conjunctive « et qui sont des ressortissants de l'une de ces Parties » makes nationality a hard cumulative gate alongside the legislation-subjection condition. Family members and survivors are also covered by Article 2 §1 but the calculator does not collect family-relationship metadata (the MVP scopes age-65 personal old-age claims only). Article 2 §2 is the equal-treatment principle applied to the Article 2 §1 cohort, not a scope expansion. Pre-1995 article numbering: CV-LU's Article 2 corresponds to the modern bilateral pattern's Article 3 (e.g., MA-LU/TN-LU also use Article 2; US/CA/IN/JP/KR/BR use Article 3).
Operational scope: {CV} ∪ EU-27. The convention text alone restricts to LU + CV + family members + survivors. Per research/cnap/reglements/nationality-restrictions.md §5 default rule, the operational qualifying-nationality set extends to all EU-27 nationals via the EU non-discrimination overlay — Luxembourg as an EU member state cannot grant a treaty path to its own nationals while denying it to other EU-27 nationals. The qualifying set therefore includes CV + the 27 EU member states (LU is in the EU-27 set already). Phase 1 hard-stop §3.5 confirmed the convention contains no language broader than EU-27 (no AELE/EEE/Suisse/Royaume-Uni references), so the EU-27-broader-than hard stop is not triggered. Same mechanism as MA-LU; distinct from TN-LU which carries an in-treaty Annexe (Gottardo declaration) — CV-LU pre-dates Gottardo by 13 years and has no in-treaty Annexe. Refugees and stateless persons are not explicit in CV-LU's Article 2 (distinct from MA-LU and TN-LU which carry explicit carve-outs); CCSS may apply analogue treatment under the 1951 Geneva Convention or 1954 New York Convention, but this is not modelled in the engine — affected users should contact CCSS for an authoritative determination.
Cape Verdean coverage scope: single-pillar PAYG (INPS). Per Article 1 §1.2.d of the convention, the agreement covers Cape Verde's « prestations de vieillesse, d'invalidité et de décès » (old-age, invalidity, and survivor pensions) administered by INPS (Instituto Nacional de Previdência Social) — Cape Verde's National Social Insurance Institute, a single-pillar public PAYG system. No multi-pillar concern (unlike MA-LU's CNSS/CMR/RCAR or US-LU's OASDI vs Federal Civil Service). When entering Cape Verdean months in the calculator, enter your total INPS-creditable months — single-pillar from the calculator's perspective.
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 17 §3 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (« Si les périodes d'assurance et les périodes assimilée[s] en vertu de la législation de l'une des Parties contractantes n'atteignent pas, dans leur ensemble, un an, aucune prestation n'est accordée en vertu de ladite législation »). Cape Verde-Luxembourg has the 1-year LU minimum gate — same shape as US-LU Article 17, CA-LU Article IX bis(1), BR-LU Article 17, MA-LU Article 20, TN-LU Article 24. CSS Art 171 via Article 17 §1 requires 120 months of aggregated coverage at age 65 — Luxembourg + Cape Verdean periods that don't overlap are added together for this test (« pour autant qu'elles ne se superposent pas »).
Calculation. When both gates are met, Article 20 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 20 §1 applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 20 §2 — verbatim « Le montant le plus élevé est seul retenu ». If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 20 §2 applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Cape Verdean career had been completed under LU law, per Article 20 §2(a)) multiplied by your LU share of total months (Article 20 §2(c)). Article 20 §2(b) imputation rule, verbatim: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), MA-LU 24(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), TN-LU 27(2)(b)).
No convention-level 480-cap clause — matches MA-LU; distinct from BR-LU / TN-LU / AR-LU / UY-LU / AL-LU. Article 20 §2(c) of CV-LU reads « sur la base de ce montant théorique l'institution de cette Partie fixe ensuite le montant effectif de la pension au prorata de la durée des périodes d'assurance accomplies sous la législation qu'elle applique par rapport à la durée totale des périodes d'assurance accomplies sous les législations des deux Parties. » — no closing « plafonnée » sentence capping the denominator (compare BR-LU Article 16(2)(c) and TN-LU Article 27(2)(c) which both carry the trailer). The CV-LU pro-rata fraction therefore uses the unbounded denominator LU_months / total_months. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration via the theoretical-amount calculation, so the engine pays the user no less than LU domestic law would on its own. For very long aggregated careers (e.g., 60 LU + 480 CV = 540 months), the user gets less under CV-LU than they would under BR-LU/TN-LU at the same aggregated total — the CV-LU pin in test_cv_lu.py::test_no_pro_rata_cap_at_aggregated_above_480 fails if anyone mistakenly introduces a cap.
Accuracy framing. The Cape Verde-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 19 (third-state totalisation) by dispatcher independence — when you have Luxembourg + Cape Verdean + EU periods, the EU 883/2004 engine and the Cape Verde-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Article 17 §2 (baby-years; "last LU coverage before birth/adoption" condition — caveat emitted by the engine when both baby-years and CV periods are present), Article 4 (anti-cumulation; pension carve-out in §1 second sentence makes this minimally applicable for old-age), Article 38 (transitional substitution from the 1975-era LU-PT-CV adhesion protocol), the 1989 Protocole spécial family-allowance scoping, and the invalidity / survivor branches are not modelled in the MVP — the calculator targets age-65 old-age pensions only. Refugees and stateless persons are not explicit in CV-LU's Article 2 (distinct from MA-LU/TN-LU); affected users should contact CCSS for authoritative determination. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. The Cape Verdean institution INPS computes the Cape Verdean-side benefit independently under Articles 17 and 20 of the convention.
Sources: Convention entre le Luxembourg et le Cap-Vert sur la sécurité sociale, signed 24 May 1989 (Luxembourg); in force 1 August 1992 — verbatim French text via the Légilux ELI URL of Loi du 28 avril 1992 (Légilux ELI); LU promulgation Mémorial A-N°28 (11 May 1992, p. 909); administrative arrangement annexed in same Mémorial publication (p. 920); CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Article 1 §1 (material scope; LU pillar iv covers vieillesse + invalidité + décès, CV pillar d covers same), Article 2 §1 (personal scope — restricted to nationals of the contracting parties + family members + survivors; T19 third nationality-restricted engine confirmed), Article 2 §2 (equal-treatment principle for the Article 2 §1 cohort), Article 3 (export of pensions, anti-export prohibition + third-state pension export to nationals of the other Party), Article 17 §1 (totalisation, non-overlap rule), Article 17 §2 (prior-insurance-condition + last-LU-coverage requirement; baby-years caveat trigger), Article 17 §3 (LU 1-year minimum gate), Article 18 (qualifying-period extension), Article 19 (third-state totalisation), Article 20 §1 (autonomous-or-better path; verbatim « Le montant le plus élevé est seul retenu »), Article 20 §2(a) (theoretical amount), Article 20 §2(b) (imputation rule — LU-only basis), Article 20 §2(c) (pro-rata fraction — NO « plafonnée » cap, matches MA-LU), Article 38 (transitional substitution from the LU-PT-CV adhesion protocol; pre-1975 residue), Article 39 (one-year tacit renewal), Article 41 (entry-into-force, mechanical 3-month-after-last-notification rule). Authentic languages: French and Portuguese (both equally authentic; no tiebreaker clause). No avenants since 1992 EIF (T19 Phase 0 confirmed). Audit trail: T19 Phase 0 report, Phase 1 audit, and CV-LU interpretation doc.
Turkey-Luxembourg Bilateral
The Convention on Social Security between the Grand Duchy of Luxembourg and the Republic of Turkey was signed in Luxembourg on 20 November 2003 and entered into force on 1 June 2006. LU promulgation: Loi du 8 avril 2005 (Mémorial A 2005-051 of 20 April 2005, p. 794, TR-LU section pp. 805–815); entry-into-force decree at Mémorial A 2006-067 of 14 April 2006, p. 1324; administrative arrangement signed 8 December 2004, in force concurrently with the convention on 1 June 2006. The closing provision reads « FAIT à Luxembourg, le 20 novembre 2003, en double exemplaire en langues française et turque, les deux textes faisant également foi » — French and Turkish are equally authentic, with no tiebreaker clause. The calculator cites the French column (the version published in the Luxembourg Mémorial). Phase 0 confirmed zero avenants in the 20 years since signing — the 2003 base text is the operative text. Distinguishes TR-LU from CA-LU (Avenant 2018-A442) and US-LU (Supplementary Agreement). T20 is the first of two routine completions closing the 22-treaty rebuild after T19 CV-LU shipped (T21 PH-LU follows).
Turkish coverage scope: pre-2008 multi-pillar (SSK + Emekli Sandığı + Bağ-Kur) → unified SGK post-2008. The 2003 convention pre-dates Turkey's 2006–2008 social-security unification (Law No. 5502 of 2006 and Law No. 5510 of 2008 merged the three legacy funds into a single agency). Article 2 §1.A of the convention enumerates four Turkish pension-relevant legislations: (1) SSK / Sosyal Sigortalar Kurumu — predecessor of the unified SGK, applicable to private-sector salaried workers and agricultural workers; (2) Emekli Sandığı (Caisse de Retraite) — civil servants (« fonctionnaires d'Etat »); (3) Bağ-Kur — self-employed (artisans, liberal professions, non-salaried agricultural workers); and (4) caisses transitoires under Article 20 of Law No. 506 — special legacy schemes (banks etc.). Post-2008, all three pre-unification pension funds were absorbed into SGK (Sosyal Güvenlik Kurumu — Turkey's Social Security Institution), the modern unified successor. The administrative arrangement (signed 8 December 2004, before unification) names the three pre-2008 institutions as competent for old-age / invalidity / survivors; CCSS practice today routes inquiries through SGK as the unified successor. The convention's Articles 23–24 are fund-agnostic on the Turkish side — totalisation and calculation operate on aggregate « périodes d'assurance accomplies en vertu de la législation [de chacune des Parties] », without per-fund variation. When entering Turkish months in the calculator, enter your total Turkish-creditable months across whichever pre-2008 fund(s) applied to your career history; for users with pre-2008 Turkish years, the relevant historical institution depends on your employment category at the time (private-sector employee → SSK; civil servant → Emekli Sandığı; self-employed → Bağ-Kur).
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 25 §1 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (« Si la durée totale des périodes d'assurance accomplies sous la législation d'une Partie contractante n'atteint pas une année et si, compte tenu de ces seules périodes, aucun droit n'est acquis en vertu de cette législation, l'institution de cette Partie n'est pas tenue d'accorder des prestations au titre desdites périodes »). Turkey-Luxembourg has the 1-year LU minimum gate — same shape as US-LU Article 17, CA-LU Article IX bis(1), BR-LU Article 17, MA-LU Article 20, TN-LU Article 24, MD-LU Article 19, CV-LU Article 17 §3. CSS Art 171 via Article 23 §1 requires 120 months of aggregated coverage at age 65 — Luxembourg + Turkish periods that don't overlap are added together for this test (« pour autant qu'elles ne se superposent pas »).
Calculation. When both gates are met, Article 24 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 24 §1 applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 24 §2 — verbatim « Le montant le plus élevé est seul retenu ». Article 24 §1 carries the explicit max-clause — same shape as BR-LU 16(1), IN-LU 14(1), ME-LU 23(1), CV-LU 20(1), TN-LU 27(1), MA-LU 24(1); no IGSS-letter dependency required to establish LU's double-calculation practice (contrast MD-LU 18(2) which lacked the clause and required IGSS interpretation). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 24 §2 applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if the full LU + Turkish career had been completed under LU law, per Article 24 §2(a)) multiplied by your LU share of total months (Article 24 §2(c)). Article 24 §2(b) imputation rule, verbatim: « les bases de calcul ne sont établies que compte tenu des périodes d'assurance accomplies sous la législation que l'institution compétente applique » — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), MA-LU 24(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), TN-LU 27(2)(b), CV-LU 20(2)(b), MD-LU 18(3)(a), ME-LU 23(2)(b)).
No convention-level 480-cap clause — same shape as MA-LU and CV-LU; distinct from BR-LU / TN-LU / AR-LU / UY-LU / AL-LU. Article 24 §2(c) of TR-LU reads « sur la base de ce montant théorique l'institution de cette Partie fixe ensuite le montant effectif de la pension au prorata de la durée des périodes d'assurance accomplies sous la législation qu'elle applique par rapport à la durée totale des périodes d'assurance accomplies sous les législations des deux Parties. » — and terminates there, with no closing « plafonnée » sentence capping the denominator (compare BR-LU Article 16(2)(c) and TN-LU Article 27(2)(c) which both carry the trailer). The TR-LU pro-rata fraction therefore uses the unbounded denominator LU_months / total_months. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration via the theoretical-amount calculation, so the engine pays the user no less than LU domestic law would on its own. For very long aggregated careers (e.g., 60 LU + 480 TR = 540 months), the user gets less under TR-LU than they would under BR-LU/TN-LU at the same aggregated total — the TR-LU pin in test_tr_lu.py::test_long_career_no_convention_cap fails if anyone mistakenly introduces a cap.
Accuracy framing. The Turkey-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads "Treaty-derived estimate, not CCSS-validated. ±5%." verbatim. Known simplifications: the engine handles Article 23 §1 second sub-paragraph (third-state aggregation) by dispatcher independence — when you have Luxembourg + Turkish + EU periods, the EU 883/2004 engine and the Turkey-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Baby-years — TR-LU does NOT carry a Luxembourg-particularity article (no equivalent to MD-LU Article 20, BR-LU Article 18, IN-LU Article 15); the engine emits a CCSS-confirmation caveat anchored on domestic CSS practice when the user has both baby-years and Turkish periods. Anti-cumulation rules (Article 7 — paragraph 1 explicitly carves out invalidity / old-age / survivor pensions liquidated under section II from the non-cumul rule), voluntary continued insurance (Article 6), posting / detachment provisions (Articles 8–13), Section I sickness / maternity (Articles 14–22), Article 26 funeral allowance, Section IV work-accident / occupational-illness branch (Articles 27–30), Section V unemployment branch (Articles 31–34, İş-Kur), Section VI family benefits (Articles 35–36), Article 48 transitional substitution, and the invalidity and survivor branches are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. SGK (post-2008 unified successor of SSK + Emekli Sandığı + Bağ-Kur) computes the Turkish-side benefit independently under Articles 23 and 24 of the convention.
Sources: Convention entre le Grand-Duché de Luxembourg et la République de Turquie en matière de sécurité sociale, signed 20 November 2003 (Luxembourg); in force 1 June 2006 — verbatim French text via the Légilux ELI URL of Loi du 8 avril 2005 (Légilux ELI); LU promulgation Mémorial A 2005-051 (20 April 2005, p. 794, TR-LU section pp. 805–815); entry-into-force decree Mémorial A 2006-067 (14 April 2006, p. 1324); administrative arrangement signed 8 December 2004, in force 1 June 2006; CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Article 1 (definitions), Article 2 §1.A (Turkish coverage scope: SSK + Emekli Sandığı + Bağ-Kur + caisses transitoires pre-2008, unified SGK post-2008), Article 2 §1.B (LU coverage scope: pension insurance for old-age, invalidity, survivors), Article 3 (personal scope — open-scope, no nationality restriction; T20 confirms CNAP overview-page summary), Article 4 (equal-treatment principle), Article 5 (export of pensions), Article 7 §1 (anti-cumulation, with carve-out for old-age section II — no engine gate), Articles 8–13 (legislation applicable / postings — out of MVP), Article 23 §1 (totalisation, non-overlap rule, plus second sub-paragraph for third-state extension), Article 24 §1 (autonomous-or-better path; verbatim « Le montant le plus élevé est seul retenu »), Article 24 §2(a) (theoretical amount), Article 24 §2(b) (imputation rule — LU-only basis), Article 24 §2(c) (pro-rata fraction — NO « plafonnée » cap, matches MA-LU and CV-LU), Article 25 §1 (LU 1-year minimum gate), Articles 14–22 (Section I sickness/maternity — out of MVP), Article 26 (funeral allowance — out of MVP), Articles 27–30 (Section IV work-accident / occupational-illness — out of MVP), Articles 31–34 (Section V unemployment — out of MVP, İş-Kur), Articles 35–36 (Section VI family benefits — out of MVP), Articles 37–47 (Partie IV procedural / administrative), Article 48 (transitional rules), Articles 49–51 (treaty mechanics) of the convention. Authentic languages: French and Turkish (both equally authentic; no tiebreaker clause). No avenants since 2006 EIF (T20 Phase 0 confirmed). Audit trail: T20 Phase 0 report, Phase 1 audit, and TR-LU interpretation doc.
Philippines-Luxembourg Bilateral
The Agreement on Social Security between the Grand Duchy of Luxembourg and the Republic of the Philippines was signed in Luxembourg on 15 May 2015 and entered into force on 1 January 2020. LU promulgation: Loi du 29 novembre 2016 (Mémorial A 2016-241 of 2 December 2016, p. 4463–4478); entry-into-force decree at Mémorial A 2019-639 of 27 September 2019; administrative arrangement signed 19 January 2018 in Manilla, published in Mémorial A 2019-640 of 27 September 2019, in force concurrently on 1 January 2020. The closing provision of the convention reads “Done at Luxembourg, on 15th May 2015, in the English language in two originals.” — English is the sole authentic language (no French parallel column; the Mémorial publishes the English-authentic text directly, prefixed by the French Loi du 29 novembre 2016 wrapper). Phase 0 confirmed zero avenants in the 6 years since EIF — smallest amendment window in the inventory; the 2015 base text is the operative text. T21 PH-LU is the FINAL per-treaty PR, closing the 22-treaty rebuild after T20 TR-LU shipped.
Philippine coverage scope: multi-pillar SSS + GSIS + Portability Law. Article 2 § 1 (b) of the agreement enumerates three Philippine pension-relevant legislations: (i) the Social Security Law → SSS (Social Security System) — private-sector employees, self-employed, and Overseas Filipino Workers (OFWs); (ii) the Government Service Insurance Act → GSIS (Government Service Insurance System) — civil servants, military, and other public-sector personnel; and (iii) the Portability Law (Republic Act 7699) — the within-Philippines totalisation mechanism that aggregates creditable services or contributions between SSS and GSIS for users with mixed Philippine careers. Both SSS and GSIS remain active independent institutions today — the Philippines did not unify its pillars (contrast Turkey's 2008 SGK unification of SSK + Emekli Sandığı + Bağ-Kur). The administrative arrangement (signed 19 January 2018) confirms this dual structure by designating both SSS and GSIS as competent institutions on the Philippine side. The agreement's Articles 14 and 18 are fund-agnostic — totalisation and calculation operate on aggregate “insurance periods completed under the legislation [of the other Contracting State]”, without per-fund variation. When entering Philippine months in the calculator, enter your total Philippine-creditable months across both SSS and GSIS pillars; the Portability Law clause (Article 2 § 1 (b)(iii)) explicitly handles within-Philippines totalisation between the two systems and takes that internal complexity off the table for the LU calculation. For users with Philippine years, the relevant institution depends on your employment category (private-sector / OFW → SSS; civil servant / military → GSIS).
Eligibility. Two thresholds must both be met for Luxembourg to pay anything via this treaty. Article 17 § 1 requires at least 12 months of Luxembourg insurance; below that, the LU agency awards no pension (“The competent institution of a Contracting State shall not be required to provide benefits in respect of insurance periods completed under the legislation it applies which are taken into account when the risk materialises, if the duration of the said periods is less than one year, and taking only these periods into account, no right to benefit is acquired under that legislation.”). Philippines-Luxembourg has the 1-year LU minimum gate — same shape as Turkey-LU Article 25 § 1, US-LU Article 17, CA-LU Article IX bis(1), BR-LU Article 17, MA-LU Article 20, TN-LU Article 24, MD-LU Article 19, CV-LU Article 17 § 3. CSS Art 171 via Article 14 requires 120 months of aggregated coverage at age 65 — Luxembourg and Philippine periods that don't coincide are added together for this test (verbatim: “to the extent necessary and insofar as they do not coincide”).
Calculation. When both gates are met, Article 18 sets two paths. If you qualify for an LU pension on Luxembourg periods alone (≥ 120 months), Article 18 §§ 1 + 2 applies and Luxembourg pays the higher of (a) the autonomous LU-only amount and (b) the pro-rata amount per Article 18 § 3 — verbatim “Only the higher of these two amounts shall be taken into consideration.” Article 18 § 2 carries the explicit max-clause — same shape as TR-LU 24 §1, BR-LU 16(1), IN-LU 14(1), ME-LU 23(1), CV-LU 20(1), TN-LU 27(1), MA-LU 24(1); no IGSS-letter dependency required to establish LU's double-calculation practice (contrast MD-LU 18(2) which lacked the clause and required IGSS interpretation). If you only qualify through aggregation (12 ≤ LU < 120 months and aggregated ≥ 120), Article 18 § 3 applies and Luxembourg pays the pro-rata amount only — there is no autonomous comparison. The pro-rata is the theoretical amount (LU pension as if your full LU + Philippine career had been completed under LU law, per Article 18 § 3(a)) multiplied by your LU share of total months (Article 18 § 3(c)). Article 18 § 3(b) imputation rule, verbatim: “the calculation basis is established by reference only to those insurance periods completed under the legislation of Luxembourg” — the LU institution uses only your Luxembourg-recorded earnings basis when computing the theoretical amount (algorithmically equivalent to BR-LU 16(2)(b), MA-LU 24(2)(b), IN-LU 14(2)(b), JP-LU 19(2)(b), KR-LU 17(3)(b), TR-LU 24(2)(b), TN-LU 27(2)(b), CV-LU 20(2)(b), MD-LU 18(3)(a), ME-LU 23(2)(b)). Article 19 carries the Luxembourg baby-years particularity with the explicit “last LU coverage before birth or adoption” condition — distinguishes PH-LU from TR-LU and ME-LU which have no LU-particularity article; same shape as MD-LU Art 20, BR-LU Art 18, IN-LU Art 15.
No convention-level 480-cap clause — same shape as TR-LU, MA-LU, CV-LU, MD-LU and ME-LU; distinct from BR-LU / TN-LU / AR-LU / UY-LU / AL-LU. Article 18 § 3(c) of PH-LU reads “the competent institution shall then calculate the amount due, on the basis of the amount specified under a), in proportion to the duration of the insurance periods completed under the legislation of Luxembourg, in relation to the total duration of insurance periods completed under both Contracting States' legislation.” — and terminates there, with no closing capping sentence on the denominator (compare BR-LU Article 16(2)(c) and TN-LU Article 27(2)(c) which both carry the « plafonnée » trailer). The PH-LU pro-rata fraction therefore uses the unbounded denominator LU_months / total_months. Luxembourg domestic law (CSS Art 220) provides the 480-month maximum-required duration via the theoretical-amount calculation, so the engine pays the user no less than LU domestic law would on its own. For very long aggregated careers (e.g., 60 LU + 480 PH = 540 months), the user gets less under PH-LU than they would under BR-LU/TN-LU at the same aggregated total — the PH-LU pin in test_ph_lu.py::test_long_career_no_convention_cap fails if anyone mistakenly introduces a cap.
Accuracy framing. The Philippines-Luxembourg engine ships at the treaty-derived ±5% bar — the calculator implements the LU-side calculation per the cited articles, but no CCSS-issued estimate has been used to anchor the engine. The result panel's accuracy line reads “Treaty-derived estimate, not CCSS-validated. ±5%.” verbatim. Known simplifications: the engine handles Article 15 (third-state aggregation) and Article 18 § 4 (third-state periods feed the § 3 fraction) by dispatcher independence — when you have Luxembourg + Philippine + EU periods, the EU 883/2004 engine and the Philippines-Luxembourg engine each compute their path independently and the calculator pays the maximum (« accord par accord »). Baby-years — Article 19 carries the LU-particularity with the explicit “last LU coverage before birth or adoption” condition; the engine credits baby-years to the synthetic full-career calculation regardless of period order and emits a CCSS-confirmation caveat citing Article 19 when the user has both baby-years and Philippine periods. Anti-cumulation rules (Article 6), Article 7 §3 disability-assessment carve-out, voluntary continued insurance (Article 8), posting / detachment provisions (Articles 9–13), Article 16 reference-period extension, Article 20 (Philippine-side calculation under SSS / GSIS) handled by SSS or GSIS independently, Articles 21–30 administrative cooperation, Article 31 transitional provisions, and the invalidity and survivor branches are not modelled in the MVP — the calculator targets age-65 old-age pensions for prospective claimants. Each pension authority pays its own benefit under its own rules; the calculator estimates only the Luxembourg portion. SSS or GSIS (depending on your Philippine employment category) computes the Philippine-side benefit independently under Articles 14, 15 and 20 of the agreement, with the Portability Law (RA 7699) totalising creditable services between SSS and GSIS within the Philippine system.
Sources: Agreement on Social Security between the Grand Duchy of Luxembourg and the Republic of the Philippines, signed 15 May 2015 (Luxembourg); in force 1 January 2020 — verbatim English text via the Légilux ELI URL of Loi du 29 novembre 2016 (Légilux ELI); LU promulgation Mémorial A 2016-241 (2 December 2016, p. 4463–4478); entry-into-force decree Mémorial A 2019-639 (27 September 2019); administrative arrangement signed 19 January 2018 in Manilla, Mémorial A 2019-640 (27 September 2019), in force 1 January 2020; CSS Art. 171 (120-month aggregated stage at age 65), Art. 184 (early-retirement gates, LU-only), and Art. 220 (480-month maximum-required duration for a full LU benefit — applied via the LU theoretical-amount calculation); Article 1 (definitions), Article 2 § 1 (b) (Philippine coverage scope: SSS + GSIS + Portability Law), Article 2 § 1 (a) (LU coverage scope: pension insurance for old-age, invalidity, survivors), Article 3 (personal scope — open-scope, no nationality restriction; T21 confirms CNAP overview-page summary), Article 4 (equality of treatment), Article 5 (export of benefits), Article 6 (reduction or suspension clauses), Article 7 (recognition of benefits, income, facts or events), Article 8 (admission to optional continued insurance), Articles 9–13 (applicable legislation / postings — out of MVP), Article 14 (aggregation, non-coincidence rule), Article 15 (third-state aggregation; dispatcher-handled), Article 16 (extension of reference period — out of MVP for old-age), Article 17 § 1 (LU 1-year minimum gate), Article 18 §§ 1 + 2 (autonomous-or-better path; verbatim “Only the higher of these two amounts shall be taken into consideration”), Article 18 § 3(a) (theoretical amount), Article 18 § 3(b) (imputation rule — LU-only basis), Article 18 § 3(c) (pro-rata fraction — NO closing capping sentence; matches TR-LU, MA-LU, CV-LU, MD-LU, ME-LU), Article 19 (LU baby-years particularity; “last LU coverage before birth or adoption” condition), Article 20 (Philippine-side calculation — out of MVP, handled by SSS / GSIS), Articles 21–30 (administrative provisions — out of MVP), Article 31 (transitional provisions), Articles 32–35 (revision of rights, prescription, duration, guarantee), Article 36 (entry into force) of the agreement. Authentic language: English (single; “Done at Luxembourg, on 15th May 2015, in the English language in two originals.”). No avenants since 2020 EIF (T21 Phase 0 confirmed). Audit trail: T21 Phase 0 report, Phase 1 audit and PH-LU interpretation doc.
Part 6 — Glossary
Six terms used throughout the calculator and the methodology, defined once.
- Totalisation
- Counting insurance periods completed under another country's pension regime toward Luxembourg's stage requirements (the 12-month minimum and the 120-month aggregated-stage threshold). Under EU Reg 883/2004 Art. 6, every member state's months count for eligibility. Each country still pays its own pension on its own months, not on the totalised figure.
- Pro-rata
- A pension amount built by computing the theoretical Luxembourg pension as if the entire cross-border career had been insured in Luxembourg, then multiplying by the share of insurance months that were actually under Luxembourg legislation. Defined in Art. 52(1)(b) of Reg 883/2004 as the formula
theoretical × (LU months / total months). - Autonomous amount
- The Luxembourg pension calculated on Luxembourg insurance periods and Luxembourg earnings alone, as if no other country were involved. In Art. 52(1)(a) of Reg 883/2004 it is the result of applying Luxembourg national law without aggregation. The result panel labels this the autonomous path; the dispatcher pays it whenever it exceeds every treaty path's pro-rata.
- Theoretical amount
- An intermediate figure used to compute the pro-rata: the Luxembourg pension that would be payable if all insurance months across all member states had been completed under Luxembourg legislation. Foreign months are imputed at the Luxembourg average earnings under Art. 56(1)(c). Never paid directly; only the pro-rata share of the theoretical amount enters the comparison.
- Principle of most favourable
- When more than one coordination instrument applies to a career, CNAP runs the Luxembourg pension calculation under each instrument independently and pays the highest result — accord par accord. Supported by CJEU jurisprudence (Rönfeldt, Case C-227/89) and codified for cross-EU mobility in Article 8 of Reg 883/2004. The calculator's multi-path dispatcher implements this rule directly.
- Treaty path
- One coordination instrument's contribution to the calculation. The result panel renders one card per applicable treaty path (EU 883/2004, each relevant bilateral, the no-agreement fallback). Each card shows the path's paid amount, accuracy framing, methodology link, and primary-source URL where applicable. The winning path is highlighted; every path other than the winner is shown for transparency.
A note on the replacement ratio
The calculator shows a replacement ratio alongside your projected pension: your monthly gross pension as a percentage of your projected final-year salary — the salary you entered today, compounded annually by your real-growth-rate setting up to your retirement year. A ratio of 90% means your pension equals 90% of what you're projected to be earning just before you retire. This matches the basis used by retirement-planning tools at Fidelity, Vanguard, and similar — a 'today's salary' basis would inflate the apparent ratio for users with positive real-growth assumptions and set up disappointment when comparing against external tools.
Treat it as a rough intuition check, not a prediction. Your actual standard of living at retirement will also depend on inflation, tax, any other income, and how your needs change over the intervening years. The ratio is useful for quickly seeing whether your current trajectory is in the ballpark of what you want — not for fine-tuning.
Salary inputs
The calculator requires a gross annual salary of at least €10,000. This is a calculator sanity threshold — it allows the engine to produce a meaningful projection — not a legal floor. The actual Luxembourg social minimum wage (SSM) for unskilled workers is around €31,000/year in 2025; salaries below SSM would typically not generate insurable pension rights in any case. If you're modelling a part-year, very-part-time, or self-employed scenario where annualised earnings sit below €10,000, treat the calculator's output as not applicable to your case.
Part 7 — What the 2026 pension reform changed
Luxembourg implemented a significant pension reform effective 2026. Key changes:
- Contribution rate increased from 24% to 25.5% of covered earnings (split between employee, employer, and state)
- More flexible recognition of study years from age 18 onwards
- Progressive increase in required contribution duration for early retirement, phasing in from 1 July 2026
- Introduction of a progressive pension in the general scheme, allowing partial retirement
- New tax abatement for people who could retire but choose to continue working, even part-time, claimable via MyGuichet.lu
The core calculation formula — MF + MP structure, threshold mechanics, index adjustment — is unchanged. The reform primarily affects contribution rates, eligibility windows, and optionality around the retirement decision. MyPensionPlan.lu's calculation engine reflects the 2026 rates and continues to match CNAP's published worked examples.
Based on CNAP publication "Informations autour de l'adaptation du régime de pension en 2026" and related grand-ducal regulations.
Part 8 — What happens for retirement years in the future
CNAP publishes official parameters — MF rate, MP rate, threshold, reference amount, revaluation factor — one to two years in advance. For retirements further out, these parameters don't yet exist.
MyPensionPlan.lu handles this by projecting the most recent published parameters forward at two user-configurable rates: an inflation rate (CPI) and a nominal wage-growth rate. When this happens, the calculator labels the result as a forecast and displays an amber notice above the result:
"Your retirement year (2061) is beyond CNAP's published parameters. The calculation uses forecast values projected from the latest published row and will refine as CNAP publishes updates."
Defaults are 2 % CPI and 1.5 % nominal wage growth — anchored to historical Luxembourg behaviour rather than to optimistic forward expectations. The <em>revaluation factor</em> projection uses the wage-growth rate; the empirical Art 220bis revaluation factor (codified by CSS Art. 222 and Art 220bis) has grown at a long-run CAGR of about 1.21 % per year and 1.23 % per year over the most recent decade, materially below CPI. The legal cap and the social-security reference amount also follow this same wage-growth rate.
Which parameters follow which rate:
- CPI-indexed (drives the inflation rate): the cost-of-living index index NI (échelle mobile), the SSM ceiling used by the invalidity / voluntary / survivor regimes, and the income-tax band thresholds.
- Wage-indexed (drives the wage-growth rate): the social-security reference amount (montant de référence), the Art 218 legal cap, and the Art 220bis revaluation factor that revalues your historical contributions to retirement-year terms. CSS Art. 222 ties this factor to wage developments, but the empirical realisation has run below CPI for the entire published series.
- Your own salary is projected at the nominal rate (real growth × CPI compound) so the engine's ni100 ratio captures the real-growth differential between your salary and the wage index. Without this, the user's real-growth input would silently cancel out in the engine's pension formula.
Note that the MF and MP rate schedule through 2052 is set by law (the 2012 reform phase-in) and is therefore known, not forecast. What's projected forward in forecasts are the parameters set annually by grand-ducal regulation. The anchor for the projection is the most recent published row in CNAP's parameters table (currently 2026); as CNAP publishes each new year's parameters, the projection horizon shrinks and the forecast becomes more accurate.
Why a wage-growth default below inflation? Three independent sources point in the same direction. (1) CNAP's own published revaluation_factors.yaml series shows long-run adj CAGR of 1.21 % per year and 10-year CAGR of 1.23 % per year — versus a CPI default of 2 %, that's a real adj decline of ≈ 0.8 percentage points per year. (2) STATEC's published wage-index series for 2018–2024 grew at about 3.5 % per year nominal but only ≈ 1 % per year in real terms, consistent with the long-run pattern. (3) OECD Pensions at a Glance 2023 projects a net replacement rate of 70.4 % for Luxembourg high earners retiring around 2062 — broadly the persona MyPensionPlan.lu's recalibrated defaults converge to. Setting wage growth at or above CPI by default produces replacement ratios materially above OECD's projection and the engine's persona-test ceiling. We default to the historical baseline so the headline number is honest; users who believe future indexation will outpace history can dial the rate up.
Forecasts are not predictions. They're "what would your pension be if your assumed rates held over the projection horizon?" Actual future indexation will differ — the further out, the more uncertainty. A 2028 forecast is more reliable than a 2061 forecast because fewer parameters need projecting and over shorter horizons. The STATEC website publishes Luxembourg's current CPI and wage indices if you want to set your assumptions from observed data rather than the defaults.
Based on CSS Art. 222 (revaluation factor mechanics); CNAP's published revaluation_factors.yaml series (1.21 %/yr long-run CAGR, 1.23 %/yr 10y CAGR); STATEC 2018–2024 wage-index series (≈ 3.5 %/yr nominal, ≈ 1 %/yr real); OECD Pensions at a Glance 2023, Luxembourg country chapter (projected 70.4 % net replacement for high earners by 2062). Forecast logic: Pension.lu PR #77 + #79; default recalibration: Pension.lu PR #82 (2026-05).
Part 9 — What the calculator assumes
The calculator makes these capabilities and assumptions explicit in the caveats section under every result:
- Cross-border support under EU Reg 883/2004. The calculator accepts insurance periods country by country and runs the Luxembourg side of EU coordination: the 12-month LU gate (Art. 57(1)), the aggregated 120-month stage gate (CSS Art. 184 via Reg 883/2004 Art. 6), the Art. 52 dual calculation paying the higher of the autonomous and pro-rata amounts, and the uniform LU earnings imputation on foreign months (Art. 56(1)(c)). See Methodology — cross-border.
- Post-2013 reform rules only. The 2013 pension reform changed the formula structure and transitional rules apply for people who started their careers before 2013 and retire during a phase-in window. MyPensionPlan.lu currently applies post-2013 rules throughout. Users retiring between 2013 and 2052 under the transitional regime may see results that differ from CNAP's internal calculations; this is a known residual limitation.
- Old-age pension only. The formula differs for disability and survivor pensions. MyPensionPlan.lu calculates only the standard old-age pension.
- Complementary periods partially modelled. Study years (Art. 174), baby years (Art. 171 §7 / Art. 172 §4), and declared career gaps are user inputs. Residual credits outside the current input set: military service, maternity leave as a separable credit beyond baby-year coverage, assurance continuée, and rachat.
- Real salary growth is a single user-supplied parameter. The calculator assumes a constant real growth rate over your remaining career. Real careers have promotions, sabbaticals, part-time periods, and job changes. Users who want to model these can lower the growth assumption or run multiple scenarios.
- Gross pension only. The calculator shows gross monthly pension before income tax, dependency insurance, and health insurance contributions. Net take-home will be lower.
Verifying a MyPensionPlan.lu number
If you want to spot-check the calculator against CNAP's own examples, the January 2025 CNAP brochure contains worked examples using specific career profiles. MyPensionPlan.lu's engine matches those examples to the cent.
If you get an official CNAP estimate (available from age 55+) and it disagrees materially with MyPensionPlan.lu, the most likely explanations in decreasing order of likelihood are:
- You're in the 2013 transitional regime and CNAP is applying phase-in protections the calculator does not model.
- A residual credit outside the current input set — military service, assurance continuée, or rachat — is reflected in CNAP's figure.
- A data input difference — a salary, a start year, or a date typed slightly differently.
A gap of more than 5% between a MyPensionPlan.lu forecast and a CNAP estimate for the same inputs is unusual. If you find one, we'd like to hear about it.
Sources and further reading
- Code de la Sécurité Sociale — the legal basis. Articles 211-220 cover old-age pensions specifically. Available at legilux.public.lu.
- Loi du 21 décembre 2012 (FR) — the reform law introducing the phase-in schedule for MF and MP rates through 2052.
- Règlement grand-ducal du 26 décembre 2012 (FR) — fixes revaluation factors through 31.12.2011 and anchors the post-reform parameter framework.
- Annual grand-ducal regulations — published in the Mémorial setting each year's index, revaluation factor, and minimum-pension values. Browse on legilux.public.lu.
- CNAP annual reports and brochures — at cnap.public.lu. Include worked examples and parameter histories.
- IGSS Rapport général annuel (FR) — the broader social security annual review, with pension-parameter annexes.
- STATEC — national statistics office, source for IPCN cost-of-living index values (statistiques.public.lu).
This is a calculation tool, not financial advice
MyPensionPlan.lu provides an arithmetic estimate of your future CNAP pension under the current legal framework. It is not advice about whether to retire, whether to contribute more, which supplementary pension to buy, or how to structure your finances. For questions of personal strategy, speak to a qualified adviser or contact CNAP directly.