BCL TPTIBS Reporting 2027: Technical Guide + Solution

The TPT-IBS report — the monthly security-by-security reporting of financial companies — is the most granular of the three statistical returns that Luxembourg financial companies file with the Banque centrale du Luxembourg. Every individual security on the balance sheet is reported line by line, with its identification, valuation and, when no ISIN exists, a full set of supplementary data. This guide covers Layout 2, applicable from the January 2027 reference period, and flags the points where the BCL’s own documents disagree with one another.

5items in scope
23permanent rules
20working days
€500mexemption threshold
BCL TPT-IBS monthly security-by-security reporting for Luxembourg financial companies: scope, five balance sheet items, ISIN and non-ISIN securities, verification rules and XML submission
The TPT-IBS reporting chain, from the balance sheet to the XML file filed with the BCL.

Who must report, and when

Regulation BCL 2014/17 requires every resident financial company above the exemption threshold to file the S 2.16, the S 2.17 and the security-by-security report. A company is a financial company when its object covers at least one of five activities: investing in any company for any investment purpose; acquiring securities, shares, bonds, certificates of deposit or any other financial instrument; investing directly or indirectly in real estate, patents or other intellectual property; borrowing in any form; or lending funds to its shareholders, subsidiaries, affiliated companies or any other entity.

A company is resident when it is a legal person under Luxembourg law — covering the head office, its Luxembourg subsidiaries, affiliates and branches — or a legal person under foreign law acting through a head office or a branch established in Luxembourg.

PointRule
Exemption thresholdTotal balance sheet of €500 million, or the equivalent in foreign currency. Below it, the BCL exempts the company from monthly and quarterly statistical reporting.
FrequencyMonthly.
Reference dateThe last business day of each month — not the last calendar day.
DeadlineAt the latest 20 working days after the end of the month concerned. The exact dates are published on the BCL website.
Reporting currencyThe accounting currency of the company. Amounts may carry up to five decimals.
Record keepingReports and supporting documents must be kept for 24 months.
Reference date. The Definitions and concepts document is explicit: the last business day of the month is the reference date for the monthly security-by-security report. Building the file on the last calendar day will put it out of step with the S 2.16, whose reference date is the last business day of the quarter.

Securities in scope

Only securities recorded in five lines of the S 2.16 quarterly balance sheet are reported. No other line is in scope.

SideItemContent
Assets1-003000Debt securities held
Assets1-005000Equity and investment fund shares or units held
Liabilities2-002050Short sales of securities
Liabilities2-003000Debt securities issued
Liabilities2-C05000Capital, share premiums, reserves and results
The economic holder principle decides what you report. Securities lent, or sold under a repurchase agreement, stay on the lender’s balance sheet and remain reportable. Securities received under a repo, or borrowed, are not on the temporary acquirer’s balance sheet and must not be reported. Certificate-type hybrids without an ISIN — PECs, CPECs, TPECs — are loans, not debt securities, and fall outside the TPT-IBS entirely.

How a TPT-IBS file is built

Header

FieldContent
endMonthDateThe statistical reference date: the last business day of the month reported.
closingDateThe date on which the data were established. May be later than the reference date. Every security’s issue date must be on or before it.
reporterIDType and code of the entity that files.
declarantIDType and code of the entity whose data are reported.
reportingCurrencyThe accounting currency of the company.
layout2 from the January 2027 reference period.
A frequent mistake. The element is endMonthDate, not endOfMonthDate. Any other spelling fails schema validation before the file ever reaches the BCL’s verification rules.

The balance sheet line identifier

Each security sits inside a balance sheet line. In the TPT-IBS that line carries no real breakdown: the three breakdown components are always the no-breakdown codes.

ComponentElementValue in TPT-IBS
Balance sheet itemitemOne of the five codes above
CountrycountryXX
CurrencycurrencyXXX
Economic sectorsector90000

The five permitted identifiers are therefore 1-003000-XX-XXX-90000, 1-005000-XX-XXX-90000, 2-002050-XX-XXX-90000, 2-003000-XX-XXX-90000 and 2-C05000-XX-XXX-90000. Unlike the S 2.16, the TPT-IBS line carries no original maturity component.

Valuation and sign

SituationRule
Quoted securitiesThe price prevailing on the stock exchange at the end of the reporting date.
Securities other than sharesDirty price: market price plus interest accrued since the last coupon payment.
Positive amounts required1-003000, 2-002050, 2-003000
Negative amounts permitted1-005000, 2-C05000
Line totalA totalReportedAmount is required for each of the five lines and must equal the sum of its securities.

Quantity

Quoted in percentage points

Report nominalAmount and nominalCurrency. The pool factor must not be applied to the nominal. The nominal currency must be a real ISO 4217 code — XXX is forbidden.

Quoted in monetary units

Report numberOfUnits. Do not report a nominal amount or a nominal currency.

The five items in detail

1-003000 — Debt securities held

Negotiable debt instruments on the asset side: bonds, notes, commercial paper, treasury bills, subordinated debt in securities form. Accrued interest is included. Debt securities issued and held by the reporting agent itself are not recorded as assets.

FieldPermitted values
holdSecurityType01 held and not temporarily transferred, 02 lent, 03 sold under a repurchase agreement
securityTypeF.3
reportedAmount≥ 0

1-005000 — Equity and investment fund shares or units held

FieldPermitted values
holdSecurityType01, 02, 03
securityTypeF.511 quoted shares, F.512 unquoted shares, F.519 other equity, F.52 investment fund shares or units
relationshipLink01, 02, U0, 03
reportedAmountMay be negative

2-002050 — Short sales of securities

The liability arising from a short sale. The amount is the sale price, valued on the same basis as comparable positions on the asset side.

FieldPermitted values
holdSecurityType05
securityTypeF.3, F.511, F.512, F.519, F.52
reportedAmount≥ 0

2-003000 — Debt securities issued

FieldPermitted values
holdSecurityType04
securityTypeF.3
Issuer country, non-ISINLU
Issuer sector, non-ISIN44000
reportedAmount≥ 0

2-C05000 — Capital, share premiums, reserves and results

Equity capital issued by the reporting company: paid-up capital, share premiums, reserves and undistributed profits. Each shareholder and their country of residence must be identified.

FieldPermitted values
holdSecurityType04
securityTypeF.511, F.512, F.519 — F.52 is not permitted here
shareholderCountryA real ISO 3166 code, or a BCL supranational code
relationshipLink04, 05, V0, 06
reportedAmountMay be negative
The shareholder country cannot be XX. The instructions state it twice. The schema is more permissive — it accepts codes beginning with X — so a file carrying XX will validate technically and be rejected on the rules. Block it in your own tool.

ISIN and non-ISIN securities

Securities with a valid ISIN, codeType = 1

  • The first two characters must be a valid ISO 3166 country code at the date of issue, or one of EU, XA, XB, XC, XD, XS.
  • These prefixes are never valid: DU, EV, HF, HS, QS, QT, QU, QY, TE, XF, XX, ZZ.
  • The code must pass the ISO 6166 check digit.
  • Provisional or pseudo codes are not ISINs. Internal codes built to look like an ISIN must never be reported as one.

Securities without an ISIN, codeType = 2

The identification code may be internal or external, but it must never change from one report to the next. When the issuer is a Luxembourg entity, the RCS number is required as the code. If you hold several investments in the same entity, derive unique codes from a common base — B1234a, B1234b, and so on.

The issuer is identified by five elements.

ElementWhat the BCL expects
leiThe Legal Entity Identifier when one has been assigned. If none exists, report twenty zeros — never the parent company’s LEI.
nationalID/typeThe register concerned, taken from the ECB list of national identifiers.
nationalID/codeThe identification number itself. For a Luxembourg counterparty, the RCS number exactly as registered.
countryISO 3166. XX is forbidden.
sectorA Level 1 code from Types of breakdowns.
The national identifier is not a fallback. The instructions say it plainly: a national identifier must be transmitted for every counterparty, even if the LEI code has already been entered. Where the reporter genuinely holds no identifier, type XX_NOTAP and code XX exist — but the BCL monitors their use and expects them to stay exceptional.

Luxembourg investment funds

Securities issued by investment funds are reported at sub-fund level, unless the fund has a traditional single-compartment structure.

CaseFormatExample
CSSF-authorised fund, no sub-fundLUOxxxxxxC00000 or LUKxxxxxxC00000—
Compartment of a CSSF-authorised fundLUOxxxxxxCxxxxx or LUKxxxxxxCxxxxx—
Non-authorised AIF, no sub-fundSix-character prefix (LURCSB, LURCSK, LURCSL) + 7 digitsRCS K1234 → LURCSK0001234
Umbrella non-authorised AIFPrefix + 7 digits + C + 5 digitsRCS B123456, compartment 1 → LURCSB0123456C00001
Two letter series, not one. Both LUO and LUK exist for CSSF-authorised funds, and non-authorised AIFs use three prefixes, LURCSB, LURCSK and LURCSL, depending on the company form in the Trade and Companies Register. Hard-coding a single prefix is a common source of rejected lines.

Supplementary information

Supplementary data are required only for securities without an ISIN, and they depend on the nature of the instrument, not on the balance sheet side. A short sale of a debt security carries debt supplements; a short sale of equity carries equity supplements.

Debt instruments

FieldContentRule
securityTypeClassificationF.3
issueDateIssue dateOn or before the closing date. On a roll-over, report a new security with a new code, the roll-over date as issue date and the new maturity.
finalMaturityDateFinal maturity01.01.2999 for perpetual bonds.
poolFactorShare of principal still outstandingStrictly above 0. Default 1. May exceed 1 when it includes accrued interest.
couponTypeNature of the coupon01 fixed, 02 progressive, 03 floating, 04 zero, 05 index-linked, 99 other
couponFrequencyCoupons per year00 zero, 01 annual, 02 half-yearly, 04 quarterly, 06 bi-monthly, 12 monthly, 24 fortnightly, 99 other
couponLastPaymentDateLast coupon paidEquals the issue date when nothing has been paid yet. Between the issue date and the final maturity.
couponRateAnnualised rateIn percent: a 5.5 % coupon is reported as 5.5.

Equity and investment fund shares or units held

FieldPermitted values
securityTypeF.511, F.512, F.519, F.52
relationshipLink01 at least 10 % of the capital held, 02 under 10 % and issued by a shareholder of the reporting company, U0 sister company, 03 no affiliation
Dividends are gone in Layout 2. dividendAmount and dividendLastPaymentDate were removed from the equity supplements. The instructions still list them in section 5.2.2.3, but the Layout 2 schema contains no such elements: a file carrying them fails validation outright. Do not transmit them.

Capital, share premiums, reserves and results

FieldPermitted values
securityTypeF.511, F.512, F.519
shareholderCountryA real ISO 3166 code. XX is forbidden.
relationshipLink04 at least 10 % held by the shareholder, 05 under 10 % cross-holding, V0 sister company, 06 no affiliation

What Layout 2 changes

The Layout 2 schema is version 1.5 of the security-by-security structure. Four changes affect the data you transmit.

ChangeLayout 1Layout 2
Custodian bank countrycustodianBankCountry reported on each lineRemoved
Dividend data on equity helddividendAmount, dividendLastPaymentDateRemoved
Issuer identificationCountry and sectorPlus lei and nationalID
Affiliation linksU1 to U4, V1 to V4U0 and V0
Layout value in the file12

The 23 permanent verification rules

The BCL splits its checks in two. Permanent rules are addressed to software providers and must be implemented in the reporting tool. Temporary rules are addressed to reporting agents and are not expected to be coded, because they change.

#Rule
1Only the five authorised items may appear.
2Only the five authorised line identifiers may appear.
3The amount is ≥ 0 for 1-003000, 2-002050 and 2-003000; it may be below 0 for 1-005000 and 2-C05000.
4Percentage-quoted: if the reported amount is above 0, the nominal amount must be above 0.
5Currency-quoted: if the reported amount is above 0, the number of units must be above 0.
6ISIN codes comply with ISO 6166: valid country prefix and correct check digit.
7Non-ISIN: issuer country in ISO 3166, XX forbidden; issuer sector taken from Types of breakdowns.
8Twenty Level 1 sector codes are authorised: 11000, 12100, 12200, 12300, 21000, 22110, 22120, 22200, 31000, 32100, 32200, 33000, 41000, 42100, 42200, 42900, 43000, 44000, 45000, 46000.
9The type of holding matches the item: 01, 02, 03 for the two asset items; 05 for 2-002050; 04 for 2-003000 and 2-C05000.
10The nominal currency follows ISO 4217; XXX is forbidden.
11The security type matches the item, as set out above.
12Non-ISIN issued by a Luxembourg reporter: country LU, sector 44000, holding 04, affiliation 04, 05, 06 or V0.
13Non-ISIN held by a Luxembourg reporter: holding 01, 02 or 03; security type F.511, F.512, F.519 or F.52; affiliation 01, 02, 03 or U0.
14The issue date is on or before the closing date.
15The pool factor is strictly above 0, defaults to 1 and may exceed 1 exceptionally.
16The coupon type is one of 01, 02, 03, 04, 05, 99.
17The coupon frequency is one of 00, 01, 02, 04, 06, 12, 24, 99.
18Zero coupon type 04 pairs only with zero coupon frequency 00, and the other way round.
19The last coupon payment date equals the issue date when nothing has been paid, and otherwise falls between the issue date and the final maturity.
20The coupon rate is the annualised rate at the reporting date, in percent.
21The gap between the closing date and the last coupon payment is consistent with the frequency (see below).
22If the last coupon payment is strictly after the issue date and strictly before the final maturity, the coupon rate must be above 0.
23If the frequency is not 00 and the coupon type is fixed 01, the coupon rate must be above 0.

Rule 21 in detail

The permitted gaps are twice the theoretical period, so that a first coupon paid late does not trigger a false error.

FrequencyMeaningclosingDate − couponLastPaymentDate
00zero coupon≥ 0
01annual≥ 0 and < 720 days
02half-yearly≥ 0 and < 360 days
04quarterly≥ 0 and < 180 days
06bi-monthly≥ 0 and < 124 days
12monthly≥ 0 and < 62 days
24fortnightly≥ 0 and < 31 days
99other≥ 0

Reconciliation with the S 2.16

Five permanent rules link the two reports. At each quarter end, the totalReportedAmount of each TPT-IBS line must equal the amount reported on the matching S 2.16 line: 1-003000-XX-XXX-90000, 1-005000-XX-XXX-90000, 2-002050-XX-XXX-90000, 2-003000-XX-XXX-90000 and 2-C05000-XX-XXX-90000.

The temporary rule: federal states

Sector 12100, State government, may only be combined with a country that has a federal structure. The BCL’s list holds 27 countries.

AE AR AT AU BA BE BR CA CH DE ES ET FM IN IQ KM MX MY NG NL PK RS RU SD SS US VE

File naming and transmission

TPTIBS_L2_yyyymm_Rrrrrrrrrr_Dddddddddd_yyyymmdd_nnn.xml

TPTIBS_L2_202701_DSE0000999_DSE0003524_20270220_001.xml
SegmentMeaning
TPTIBSReport code.
L2Layout version.
yyyymmReference period. 202701 is January 2027.
RrrrrrrrrrThe reporter, the entity that files: type prefix followed by the identification number, padded on the left with zeros. Ten characters in total.
DdddddddddThe declarant, the entity whose data are reported. A financial company uses DSE followed by the numerical part of its RCS number, padded to seven digits.
yyyymmddFile creation date.
nnnSequence number. A new sequence starts each day, at 001. 000 is never used.
Ten characters, not eleven or twelve. The type prefix is one to three characters and the identification number is padded so the whole block is ten characters. Financial company 999 files as DSE0000999, not DSE000000999.

Reporter and declarant type codes

TypeIdentification numberPrefix in the file name
01Allocated by the CSSF to other entities1
05Allocated by the BCL5
06Allocated by the BCL to non-resident entities6
23Allocated by the CSSF to banksB
30Allocated by the CSSF to management companiesS
32Allocated by the CSSF to professionals of the financial sectorP
35Allocated by the BCL to financial companiesDSE
36Allocated by the CSSF to PFS — IT companiesI
40Allocated by the CSSF to alternative investment fund managersA

Transmission channels

The BCL accepts Sofie (SIX Payment Services Europe, CETREL Securities) and e-file (Bourse de Luxembourg, Fundsquare), as well as any other secure channel agreed between the BCL and the reporting agent. Unlike the CSSF, the BCL provides no free channel of its own.

Where the BCL documents disagree

Three points in the Layout 2 documentation are internally inconsistent. Each one has produced rejected filings, and each has a defensible resolution.

The U1 affiliation code

Compendium, rule 13

Lists 01, 02, 03, U1, U0.

Instructions, sections 4.5 and 5.2.2.3

List 01, 02, U0, 03. No U1.

Resolution: use U0. The instructions describe the code set twice and never define U1; the Layout 2 release notes state that U0 and V0 were introduced in place of the former series. U1 in the compendium is a residue of Layout 1.

The sequence number separator

Transmission manual, file name table

TPTIBS_L2_…_yyyymmdd.nnn — with a full stop.

Same manual, section 2.1, and the official example file

…_yyyymmdd_nnn.xml — with an underscore.

Resolution: use the underscore. The general structure given in section 2.1 uses it, the S 2.16 and S 2.17 rows of the same table use it, and the example file shipped inside the BCL’s own schema archive is named TPTIBS_L2_202712_DSE0999999_DSE0999999_20260715_001.xml. The full stop in the TPT-IBS row is a typographic error.

Dividend fields on equity held

Instructions, section 5.2.2.3

Still require dividendAmount and dividendLastPaymentDate.

Layout 2 schema

Contains neither element. The release notes record their removal.

Resolution: do not transmit them. A schema is not advisory — a file containing an element the schema does not declare is rejected before any verification rule is applied. Note that section 4.8.2, which describes the same supplements, already omits them.

Pre-submission checklist

Structure

  • Layout value set to 2 and _L2_ in the file name
  • endMonthDate on the last business day of the month
  • Every issue date on or before the closing date
  • Line identifiers restricted to the five permitted combinations
  • Identifier blocks in the file name exactly ten characters
  • Sequence number starting at 001 each day

Content

  • ISIN prefixes checked against the excluded list, check digit verified
  • Non-ISIN codes stable since the first report in which they appeared
  • A national identifier on every counterparty, LEI or no LEI
  • Twenty zeros where no LEI exists, never the parent’s LEI
  • Affiliation codes restricted to 01, 02, 03, U0 on the asset side and 04, 05, 06, V0 on the liability side
  • No shareholder country left at XX
  • No dividend fields transmitted
  • Dirty price applied to every debt security
  • Securities lent or sold under repo still reported; securities borrowed or received under repo excluded
  • Sector 12100 only against one of the 27 federal countries

Reconciliation

  • The five totalReportedAmount values equal to the matching S 2.16 lines at each quarter end
  • Each line total equal to the sum of its securities
  • Reports and supporting documents archived for 24 months

Filing the TPT-IBS from Excel, without writing XML

Fund XP publishes a macro-enabled workbook covering the S 2.16, the S 2.17 and the TPT-IBS in Layout 2, in a single file. Every rule on this page is implemented as a control that fires while you type: ISIN check digits verified, affiliation codes restricted to the Layout 2 list, coupon consistency tested against rule 21, shareholder country blocked at XX, and the reconciliation with the S 2.16 computed before you file. One macro produces the three XML files under their regulatory names, and refuses to write anything while a line is still in error.

Request a demonstration See the BCL reporting solution

Frequently asked questions

Which securities must be reported in the TPT-IBS?

Only securities recorded in five lines of the S 2.16 balance sheet: debt securities held (1-003000), equity and investment fund shares or units held (1-005000), short sales of securities (2-002050), debt securities issued (2-003000), and capital, share premiums, reserves and results (2-C05000). No other line is in scope.

When is the TPT-IBS due?

Monthly, at the latest 20 working days after the end of the month concerned. The reference date is the last business day of the month, not the last calendar day. The exact submission calendar is published on the BCL website.

Do I still report dividend data in Layout 2?

No. The dividendAmount and dividendLastPaymentDate fields were removed from the equity supplements in Layout 2. The instructions still mention them in section 5.2.2.3, but the schema declares no such elements, so a file containing them is rejected at validation.

Is the U1 affiliation code still valid?

No. The instructions give only 01, 02, U0 and 03 on the asset side, and 04, 05, V0 and 06 on the liability side. The U1 that still appears in rule 13 of the compendium is a residue of Layout 1 and should not be used.

What do I report when the issuer has no LEI?

Twenty zeros, never the LEI of the parent company. A national identifier is required in addition, for every counterparty, even when a LEI has been provided. Only where the reporter genuinely holds no identifier may the type XX_NOTAP and the code XX be used, and the BCL monitors that usage.

Can the shareholder country be reported as XX?

No. For item 2-C05000 the country of residence of the shareholder must be a real ISO 3166 code or a BCL supranational code. The schema is more permissive than the instructions here, so a file using XX may pass technical validation and still be rejected on the verification rules.

Are securities lent or sold under a repurchase agreement still reported?

Yes. Under the economic holder principle, securities lent or sold under a repo remain on the original owner’s balance sheet and are reported with holding type 02 or 03. Securities borrowed or received under a repo are not on the temporary acquirer’s balance sheet and must not be reported.

How does the TPT-IBS reconcile with the S 2.16?

Five permanent verification rules require the totalReportedAmount of each TPT-IBS line to equal the amount reported on the matching S 2.16 line at each quarter end, for all five items. Reconcile before filing rather than waiting for the BCL to reject the pair.

Official sources: TPT-IBS instructions, Layout 2 · TPT-IBS compendium of verification rules, Layout 2 · TPT-IBS XML schemas, Layout 2 · Definitions and concepts, 2026 · Manual of electronic transmission, 2026 · Types of breakdowns. This page is informative and does not constitute regulatory advice; only BCL publications are authoritative.

The TPTIBS report — Monthly Security-by-Security Reporting of Financial Companies — is a mandatory statistical submission to the Banque centrale du Luxembourg (BCL). Required under Regulation 2014/17, it obliges resident Luxembourg financial companies above the €500 million asset threshold to report every individual security on their balance sheet each month. This guide covers the full technical specification: scope, data model, field constraints, verification rules, and XML submission requirements — and introduces how Fund XP’s Excel-based reporting solution can dramatically simplify your compliance workflow.

Struggling with BCL Reporting?

Fund XP’s ready-to-use Excel solution (XLSM) generates fully compliant S2.16, S2.17 and TPTIBS XML files in minutes — with built-in validation, dropdown lists and automatic error detection.


Table of Contents

  1. Scope and Reporting Population
  2. Securities Subject to Reporting
  3. Data Model and Key Concepts
  4. The Five Balance Sheet Items Explained
  5. ISIN vs. Non-ISIN Securities
  6. Supplementary Information Requirements
  7. Verification Rules: Permanent and Temporary
  8. XML Submission Format and File Naming
  9. Deadlines and Reporting Calendar
  10. How Fund XP’s Excel Solution Simplifies Your Reporting
  11. Compliance Best Practices

1. Scope and Reporting Population

The TPTIBS obligation applies to all resident financial companies whose total assets exceed €500 million. Under BCL Regulation 2014/17, a company qualifies as a financial company if its business purpose includes at least one of the following activities:

  • Investment in any entity for any kind of investment purpose
  • Acquisition of securities, shares, bonds, certificates of deposit, and other financial instruments
  • Direct or indirect investment in real estate, patents, or other intellectual property
  • Borrowing in any form
  • Lending funds to shareholders, subsidiaries, affiliated companies, or any other entity

A company is considered resident when it is incorporated under Luxembourg law (covering all activities of its head office, subsidiaries, and Luxembourg-based branches) or incorporated under foreign law but operating through a Luxembourg head office or branch.

The BCL exemption threshold is currently set at €500 million in total assets. Companies below this threshold are exempt from monthly and quarterly statistical reporting.

2. Securities Subject to Reporting

The securities to be reported are those recorded in the following lines of the quarterly statistical balance sheet S 2.16 (Layout 2). No other lines are in scope.

Assets

Item CodeDescription
1-003000Debt securities held
1-005000Equity and investment fund shares/units held

Liabilities

Item CodeDescription
2-002050Short sales of securities
2-003000Debt securities issued
2-C05000Capital, share premium, reserves and results

Not in scope: Securities received in repurchase agreements or through securities borrowing are not recorded on the balance sheet of the temporary acquirer and therefore must not be reported in TPTIBS.

3. Data Model and Key Concepts

3.1 Reference Dates

  • End-of-month date (endOfMonthDate): The last calendar day of the reporting month — the statistical reference date.
  • Closing date (closingDate): The date on which data were established. May be earlier than the end-of-month date. The issue date of any security must be ≤ the closing date.

3.2 Layout Version

The report entering into force in January 2027 is the third version of TPTIBS, corresponding to layout «2». This designator appears in both the XML schema and the file name (TPTIBS_L2_…).

3.3 Balance Sheet Line Identifier

ComponentFieldRequired Value in TPTIBS
Balance sheet itemiteme.g. 1-003000, 2-C05000
CountrycountryXX (no geographic breakdown)
CurrencycurrencyXXX (no currency breakdown)
Economic sectorsector90000 (no sector breakdown)

3.4 Reported Amount and Valuation

  • Quoted securities: Closing stock-exchange price at end of reporting date.
  • Debt securities: Dirty price — market price plus accrued interest since the last coupon payment.
  • Sign rules: reportedAmount ≥ 0 for items 1-003000, 2-002050, 2-003000. May be negative for 1-005000 and 2-C05000.

3.5 Quantity of Securities

Quotation TypeField to UseNotes
Percentage-quoted (nominal value)nominalAmount + nominalCurrencyPool factor must NOT be applied to the nominal
Currency-quoted (unit count)numberOfUnitsDo NOT report nominalAmount / nominalCurrency

4. The Five Balance Sheet Items Explained

Item 1-003000 — Debt Securities Held

Covers all negotiable debt instruments on the asset side: bonds, notes, commercial paper, treasury bills, subordinated debt in securities form. Certificate-type hybrid instruments (PECs, CPECs, TPECs) are explicitly excluded — they are classified as loans. Accrued interest is included (dirty price).

FieldConstraint
holdSecurityType01 (held outright), 02 (lent), 03 (sold under repo)
securityTypeF.3 only
reportedAmount≥ 0

Item 1-005000 — Equity and Investment Fund Shares/Units Held

FieldConstraint
holdSecurityType01, 02, or 03
securityTypeF.511 (quoted), F.512 (unquoted), F.519 (other equity), F.52 (investment fund units)
reportedAmountMay be negative

Item 2-002050 — Short Sales of Securities

Records the liability arising from short selling. The amount is the sale price of the securities, valued consistently with similar positions on the asset side.

FieldConstraint
holdSecurityType05 only
securityTypeF.3, F.511, F.512, F.519, or F.52
reportedAmount≥ 0

Item 2-003000 — Debt Securities Issued

FieldConstraint
holdSecurityType04 only
securityTypeF.3 only
Issuer country (non-ISIN)Must be LU
Issuer sector (non-ISIN)Must be 44000
reportedAmount≥ 0

Item 2-C05000 — Capital, Share Premium, Reserves and Results

Records equity capital issued: paid-up capital, share premiums, reserves, and undistributed profits. Requires identification of each shareholder and their country of residence. The country code XX is not permitted here.

FieldConstraint
holdSecurityType04 only
securityTypeF.511, F.512, or F.519
Holder countryValid ISO 3166 code — XX is prohibited
affiliation04, 05, V0, or 06
reportedAmountMay be negative

5. ISIN vs. Non-ISIN Securities

5.1 Valid ISIN Codes (codeType = 1)

  • First two characters must be a valid ISO 3166 country code at date of issue, or one of: EU, XA, XB, XC, XD, XS.
  • Explicitly invalid prefixes: DU, EV, HF, HS, QS, QT, QU, QY, TE, XF, XX, ZZ.
  • Must pass the Luhn check-digit verification.
  • Provisional/pseudo-ISIN codes are not valid and must be reported as codeType = 2.

5.2 Non-ISIN Securities (codeType = 2)

Additional mandatory fields: name (official company name), currency, issuer identification (LEI, national ID type/code, country, sector). If the reporter has no issuer identifier, declare type XX_NOTAP / code XX — for exceptional use only, monitored by the BCL.

5.3 Luxembourg Investment Fund Identification

  • CSSF-authorised funds: CSSF number in format LUOxxxxxxC00000 (traditional) or LUOxxxxxxCxxxxx (sub-fund).
  • Non-authorised AIFs (NAF): RCS-based: LURCSB0123456 (traditional) or LURCSB0123456C00001 (compartment 1).
  • Securities must be reported at sub-fund level unless the fund has a traditional structure.

6. Supplementary Information Requirements

Supplementary information (supplements) is required only for non-ISIN securities and varies by security type.

6.1 Debt Securities (items 1-003000, 2-002050, 2-003000)

FieldDescriptionKey Rules
securityTypeSecurity classificationMust be F.3
issueDateIssue dateMust be ≤ closingDate
finalMaturityDateFinal maturityUse 01.01.2999 for perpetual bonds
poolFactorFraction of principal remaining> 0; default = 1; may exceed 1 exceptionally
couponTypeNature of coupon01=fixed, 02=progressive, 03=floating, 04=zero, 05=index-linked, 99=other
couponFrequencyCoupons per year00=zero, 01=annual, 02=semi-annual, 04=quarterly, 06=bi-monthly, 12=monthly, 24=fortnightly, 99=other
couponLastPaymentDateLast coupon paymentIf no payment yet: equals issueDate. Must be ≥ issueDate and ≤ finalMaturityDate.
couponRateAnnualised rate (%)E.g., report 5.5 for a 5.5% rate

6.2 Equity and Investment Fund Shares/Units (item 1-005000)

FieldConstraint
securityTypeF.511, F.512, F.519, or F.52
affiliation01=≥10% held, 02=cross-holding <10%, U0=sister company, 03=no affiliation
dividendAmountDividend coefficient (last dividend per unit)
dividendLastPaymentDateDate of last dividend payment

6.3 Capital, Share Premium, Reserves (item 2-C05000)

FieldConstraint
securityTypeF.511, F.512, or F.519 only (F.52 not permitted)
holderID / countryISO 3166 code; XX is prohibited
affiliation04=≥10% by shareholder, 05=cross-holding, V0=sister company, 06=no affiliation

7. Verification Rules in Detail

The BCL applies two categories of rules. Permanent rules must be implemented in reporting software. Temporary rules are addressed primarily to reporting agents when preparing data.

7.1 Permanent Internal Verification Rules (23 rules)

#Rule Description
1Only the five authorised item codes are permitted.
2Only the five authorised line identifiers are permitted (XX, XXX, 90000 components).
3reportedAmount ≥ 0 for items 1-003000, 2-002050, 2-003000; may be < 0 for 1-005000, 2-C05000.
4Percentage-quoted: if reportedAmount > 0, then nominalAmount > 0.
5Currency-quoted: if reportedAmount > 0, then numberOfUnits > 0.
6ISIN codes must satisfy ISO 6166 (valid country prefix + Luhn check-digit).
7Non-ISIN: issuer country must be valid ISO 3166 (no XX); sector must be a valid Level 1 code.
8Authorised sector codes: 11000, 12100, 12200, 12300, 21000, 22110, 22120, 22200, 31000, 32100, 32200, 33000, 41000, 42100, 42200, 42900, 43000, 44000, 45000, 46000.
9holdSecurityType must match the item (01/02/03 for assets; 05 for 2-002050; 04 for 2-003000 and 2-C05000).
10Nominal currency must be a valid ISO 4217 code; XXX is prohibited.
11securityType must match the item (F.3 for debt; F.511/F.512/F.519/F.52 for equity).
12Non-ISIN issued by LU reporters: country=LU, sector=44000, holdSecurityType=04, affiliation=04/05/06/V0.
13Non-ISIN held by LU reporters: holdSecurityType=01/02/03, securityType=F.511/F.512/F.519/F.52, affiliation=01/02/03/U1/U0.
14issueDate ≤ closingDate.
15poolFactor > 0; default = 1 when not applicable; may exceed 1 exceptionally.
16couponType ∈ {01, 02, 03, 04, 05, 99}.
17couponFrequency ∈ {00, 01, 02, 04, 06, 12, 24, 99}.
18Zero-coupon type (04) may only be combined with zero-coupon frequency (00), and vice versa.
19couponLastPaymentDate ≥ issueDate and ≤ finalMaturityDate; equals issueDate if no payment yet.
20couponRate is the annualised rate in percentage at the reporting date.
21closingDate – couponLastPaymentDate must be consistent with coupon frequency (limits doubled to allow first-coupon exceptions).
22If couponLastPaymentDate > issueDate and < finalMaturityDate, then couponRate > 0.
23If couponFrequency ≠ 00 and couponType = 01 (fixed), then couponRate > 0.

7.2 Cross-Report Consistency (TPTIBS ↔ S 2.16)

The totalReportedAmount for each of the five balance sheet lines in TPTIBS must exactly equal the corresponding amount in S 2.16. This cross-check is enforced permanently for all five items.

7.3 Temporary Rule — Federal State Sector (12100)

Sector code 12100 (State government) may only be used with countries having a federal structure, including: AE, AR, AT, AU, BA, BE, BR, CA, CH, DE, ES, ET, FM, IN, IQ, KM, MX, MY, NG, NL, PK, RS, RU, SD, SS, US, VE.

8. XML Submission Format and File Naming

8.1 File Name Structure

TPTIBS_L2_yyyymm_Rrrrrrrrrr_Dddddddddd_yyyymmdd.nnn
ComponentDescriptionExample
TPTIBSReport codeTPTIBS
L2Layout version 2L2
yyyymmReporting period202701 = January 2027
R + 9 digitsReporter type + ID (left-padded zeros)DSE000000999
D + 9 digitsDeclarant type + RCS numerical partDSE0003524
yyyymmddFile creation date20270220
nnnSequential number (starts at 001 daily)001

8.2 Reporter / Declarant Type Codes

Type CodeDescriptionFilename Prefix
01Number allocated by CSSF to other entities1
05Identification number allocated by the BCL5
23CSSF number allocated to banksB
30CSSF number allocated to management companiesS
32CSSF number allocated to PFS professionalsP
35BCL number allocated to financial companiesDSE
40CSSF number for alternative investment fund managersA

8.3 Transmission Channels

  • Sofie (SIX Payment Services Europe S.A. / CETREL Securities)
  • e-file (Bourse de Luxembourg / Fundsquare)
  • Any other secure channel mutually agreed with the BCL

9. Deadlines and Reporting Calendar

TPTIBS must be submitted to the BCL monthly, at the latest 20 working days after the end of the reference month. The exact submission calendar is published on the BCL website. Reporting agents must retain all reports and supporting documents for a minimum of 24 months.

10. How Fund XP’s Excel Solution Simplifies Your BCL Reporting

Preparing a fully compliant TPTIBS submission by hand — managing five balance sheet items, ISIN validation, 23 permanent verification rules, proper XML structure, and cross-checks against S 2.16 — is a substantial operational burden for any compliance or finance team. Fund XP, a Luxembourg-based IT & Consulting firm specialising in regulatory reporting, has developed a dedicated Excel-based (XLSM) reporting solution that automates this process end-to-end.

🗂️ What Is the Fund XP BCL Reporting Solution?

The Fund XP Excel template is a macro-enabled workbook (.xlsm) that covers all three BCL statistical reports required from Luxembourg financial companies in a single file:

  • S 2.16 — Quarterly Statistical Balance Sheet (assets & liabilities with full breakdowns)
  • S 2.17 — Quarterly Transactions of Financial Companies
  • TPTIBS — Monthly Security-by-Security Report (ISIN and non-ISIN securities, full supplements)

Once your data is entered, a single macro generates the BCL-compliant XML files ready for submission via Sofie or e-file — no manual XML editing required.

Key Features of the Fund XP XLSM Template

📋 Structured Data Entry Sheets

Dedicated worksheets for each report: Header (reporter & declarant IDs, currency, layout, reference dates), S216, S217, TPT ISIN (ISIN-identified securities), and TPT OTHER (non-ISIN securities with all supplement fields).

✅ Built-in Dropdown Validation

Every controlled field — item codes, hold security types, security types, coupon types, coupon frequencies, sector codes, country codes, affiliation links — uses validated dropdown lists, eliminating typos and invalid codes at source.

🔍 Real-time Error Detection

An Error Comments column on every data sheet highlights constraint violations instantly — wrong combinations, missing mandatory fields, out-of-range values — using the same logic as the BCL’s 23 permanent verification rules.

⚖️ Automatic S 2.16 ↔ TPTIBS Reconciliation

A built-in S 2.16 vs TPT reconciliation table shows the delta between your quarterly balance sheet totals and the TPTIBS totalReportedAmount for all five items — ensuring the mandatory cross-report consistency rules are satisfied before you submit.

🧾 Embedded BCL XML Schema

The workbook embeds the official BCL XSD schemas (TPTIBS, S216, S217) directly in dedicated sheets (XSDTPT, XSDS216, XSDS217), ensuring generated XML is always validated against the latest BCL specification.

🚀 One-click XML Generation

A single macro button generates correctly named, schema-valid XML files for all three reports simultaneously — applying the correct layout «2» format, file naming convention, and encoding — ready to upload to Sofie or e-file.

Who Is It For?

The Fund XP BCL reporting solution is designed for Luxembourg financial companies — holding companies, SPVs, treasury vehicles, securitisation entities — that are subject to BCL statistical reporting obligations but do not have a large, dedicated regulatory reporting infrastructure. It is equally useful for external accountants, domiciliation agents, and fund administrators who prepare BCL reports on behalf of multiple entities.

💡 Real-world impact: Instead of manually constructing an XML file, cross-checking 23 verification rules, reconciling five balance sheet lines against S 2.16, and validating ISIN codes — your team simply fills in familiar Excel rows. The solution handles the rest, reducing reporting time from hours to minutes and virtually eliminating submission rejections.

Ready to Automate Your BCL Reporting?

Discover how the Fund XP Excel-to-BCL solution can save your team time every month and eliminate compliance risk. Explore the full solution page or get in touch with our Luxembourg-based team.

11. Compliance Best Practices

  1. Implement all 23 permanent verification rules in your production system before submitting. Do not rely solely on BCL server-side rejection.
  2. Validate ISIN codes rigorously — check the country prefix and run the Luhn check-digit algorithm. Treat provisional/pseudo codes as codeType = 2.
  3. Reconcile TPTIBS totals with S 2.16 quarterly. The five totalReportedAmount values must match exactly.
  4. Use dirty price for all debt securities — forgetting accrued interest is one of the most common valuation errors.
  5. Apply the economic-holder principle consistently: securities lent or sold under repo remain on the original owner’s balance sheet.
  6. Maintain stable non-ISIN codes — once assigned in the first report, codes must never change.
  7. Monitor XX_NOTAP usage — the BCL actively tracks this identifier; it should be used only in genuinely exceptional cases.
  8. Retain all reports and documentation for 24 months — this is a regulatory minimum, not a guideline.
  9. Subscribe to BCL communications for updates to verification rules, sector code lists, and layout versions.

Conclusion

The BCL TPTIBS report is one of the most technically demanding statistical obligations facing Luxembourg financial companies. Its granular security-by-security approach — covering five distinct balance sheet items, two security identification regimes, extensive supplementary data for non-ISIN instruments, and 23 hard verification rules — requires robust data management processes and well-engineered reporting software.

Whether you build your own tooling or leverage a ready-made solution like the Fund XP Excel-to-BCL reporting tool, the key to sustainable compliance is rigorous pre-submission validation, strong reconciliation between TPTIBS and S 2.16, and thorough staff training.

For the full XML schema, the official sector code list, and the reporting calendar, visit the Banque centrale du Luxembourg website. For questions about our solution or Luxembourg regulatory reporting in general, contact the Fund XP team.

Have questions about your BCL reporting obligations?
Fund XP’s Luxembourg-based team is here to help.

Get in Touch View Our BCL Solution

Related Resources