FEC Format and Bank Statements: Complete Guide for French Tax Compliance 2025
Everything about the FEC file (Fichier des Écritures Comptables) mandatory in France: export bank statements, required format, tax audit. Expert accountants guide 2025.
Introduction: FEC Compliance for French Businesses
The FEC file (Fichier des Écritures Comptables) is mandatory for all French businesses using accounting software. Since January 1, 2014, the French tax authority (Direction Générale des Finances Publiques - DGFiP) requires companies to provide their complete accounting records in standardized digital format during tax audits.
Bank statements play a critical role in FEC compliance, as every bank transaction must be properly recorded in your accounting system and accurately reflected in the FEC export. For businesses using Sage, Cegid, QuickBooks France, or other accounting software, understanding FEC requirements for bank statement integration is essential to avoid penalties and audit complications.
This comprehensive guide covers everything French accountants and CFOs need to know about FEC format, bank statement requirements, compliance obligations, and best practices for 2025.
What is the FEC File (Fichier des Écritures Comptables)?
Legal Definition
The FEC is a text file (TXT or CSV format) containing all accounting entries for a fiscal period, structured according to specifications defined by the French tax authority in Article A47 A-1 of the Livre des procédures fiscales (LPF).
Mandatory Requirements
- All businesses subject to French accounting standards (Plan Comptable Général)
- Companies using accounting software (even simplified programs)
- Businesses of all sizes: micro-enterprises to large corporations
- Non-profit organizations maintaining accounting records
- Tax audits (contrôle fiscal)
- VAT audits (contrôle TVA)
- Upon request by tax authorities (48-hour deadline to provide)
- Some accounting software automatically generates FEC at fiscal year-end
- €5,000 per fiscal year for missing or non-compliant FEC
- Additional penalties if FEC prevents proper audit (up to €25,000)
- Potential rejection of accounting records, leading to estimated taxation
FEC File Structure and Required Fields
Mandatory Columns (18 Fields)
The FEC file must contain exactly 18 pipe-delimited (|) columns in this order:
1. JournalCode: Journal identifier (e.g., BQ for bank, VE for sales, AC for purchases) 2. JournalLib: Journal description (e.g., "Banque BNP Paribas") 3. EcritureNum: Unique entry number 4. EcritureDate: Entry date (YYYYMMDD format) 5. CompteNum: Account number (from Plan Comptable) 6. CompteLib: Account description 7. CompAuxNum: Auxiliary account number (clients/suppliers, optional) 8. CompAuxLib: Auxiliary account description (optional) 9. PieceRef: Supporting document reference (invoice number, bank statement date) 10. PieceDate: Document date (YYYYMMDD format) 11. EcritureLib: Entry description 12. Debit: Debit amount (decimal separator: comma or period) 13. Credit: Credit amount (decimal separator: comma or period) 14. EcritureLet: Reconciliation letter (optional) 15. DateLet: Reconciliation date (YYYYMMDD format, optional) 16. ValidDate: Validation date (YYYYMMDD format) 17. Montantdevise: Amount in foreign currency (optional) 18. Idevise: Currency code (ISO 4217, e.g., USD, GBP)
Example FEC Format
``` JournalCode|JournalLib|EcritureNum|EcritureDate|CompteNum|CompteLib|CompAuxNum|CompAuxLib|PieceRef|PieceDate|EcritureLib|Debit|Credit|EcritureLet|DateLet|ValidDate|Montantdevise|Idevise BQ|Banque BNP Paribas|BQ000001|20250115|512000|Banque|||RELEVE-JAN2025|20250115|Virement ABC Corp|5000,00||X|20250120|20250115|| BQ|Banque BNP Paribas|BQ000001|20250115|411000|Clients|CLI001|ABC Corporation|RELEVE-JAN2025|20250115|Virement ABC Corp||5000,00|X|20250120|20250115|| ```
Bank Statements in FEC Context
Why Bank Statements Are Critical for FEC
- Correct date (transaction date from bank statement)
- Accurate amount (exactly matching bank statement)
- Proper supporting reference (PieceRef = bank statement date or transaction reference)
- Appropriate account classification (512xxx for bank accounts per Plan Comptable)
1. Physical bank statements (PDF from bank) 2. FEC bank journal entries (JournalCode = BQ, VB, CB, etc.) 3. General ledger account 512xxx balances
Any discrepancy triggers audit flags and potential penalties.
Bank Journal Codes in FEC
- BQ: Banque (bank account)
- VB: Virements bancaires (wire transfers)
- CB: Carte bancaire (credit card)
- CA: Caisse (cash)
- PE: Prélèvements (direct debits)
- CH: Chèques (checks)
- BQ1: BNP Paribas checking account
- BQ2: Société Générale savings account
- BQ3: Crédit Agricole business account
Bank Account Numbering (Plan Comptable Général)
- 512xxx: Bank accounts
- 5121: Current accounts (comptes courants)
- 5122: Savings accounts
- 5123: Foreign currency accounts
- 5124: Escrow accounts
- 512100: BNP Paribas main checking
- 512200: Société Générale savings
- 512300: USD business account
Converting Bank Statements for FEC Compliance
Challenge: From PDF to FEC-Compliant Entries
Most French banks provide monthly statements as PDF. To include these transactions in your FEC file, you must:
1. Extract transactions from PDF bank statement 2. Convert to accounting journal entries 3. Map to Plan Comptable accounts 4. Format according to FEC specifications 5. Import into accounting software (Sage, Cegid, QuickBooks, etc.)
Manual Method (Not Recommended)
1. Print bank statement or view PDF 2. Manually type each transaction into accounting software 3. Categorize each entry (expense account, client payment, etc.) 4. Reconcile at month-end 5. Generate FEC from accounting software
- Time-consuming: 4-6 hours per bank statement
- Error-prone: 1-4% data entry error rate
- Compliance risk: Missing transactions or incorrect dates
- Doesn't scale for multiple bank accounts
Automated OCR Method (Recommended)
1. Upload PDF bank statement to BS Convert 2. AI OCR extracts all transactions to CSV (30 seconds) 3. Import CSV to accounting software with FEC-compliant mapping 4. Review and validate imported entries (5-10 minutes) 5. Generate FEC export from accounting software
- 99%+ accuracy (exceeds manual entry)
- Saves 25-30 hours/month for firms with multiple clients
- Ensures every bank transaction properly recorded
- Maintains audit trail (original PDF + extracted data)
FEC-Compliant CSV Import Structure
When converting bank statements to import into French accounting software, structure your CSV to match FEC requirements:
- Date (transaction date from bank statement)
- Description (merchant/transaction details)
- Debit or Credit amount
- Bank account number (512xxx)
- Journal code (BQ, CB, etc.)
- Supporting reference (bank statement date or transaction ID)
```csv Date,JournalCode,CompteNum,CompteLib,Debit,Credit,PieceRef,EcritureLib 15/01/2025,BQ,512100,BNP Paribas,5000.00,,RELEVE-01-2025,Virement ABC Corporation 15/01/2025,BQ,411000,Clients,,5000.00,RELEVE-01-2025,Virement ABC Corporation ```
FEC Validation and Compliance Checks
Technical Validation Requirements
The DGFiP provides official FEC validation software: Test Compta Demat
1. File Structure: Exactly 18 columns, pipe-delimited 2. Date Formats: YYYYMMDD format (20250115, not 15/01/2025) 3. Decimal Separators: Consistent use of comma or period 4. Account Numbers: Valid Plan Comptable accounts 5. Balance Verification: Debit totals = Credit totals 6. Chronological Order: Entries sorted by date 7. Character Encoding: UTF-8 or ISO-8859-15 8. No Empty Fields: Mandatory fields cannot be blank
Common FEC Errors Related to Bank Statements
Error 1: Missing Bank Transactions
Error 2: Incorrect Date Format
Error 3: Wrong Decimal Separator
Error 4: Missing Supporting References (PieceRef)
Error 5: Unbalanced Journal Entries
- Debit to bank account 512xxx
- Credit to corresponding account (client 411xxx, supplier 401xxx, expense 6xxxxx, etc.)
Accounting Software FEC Export
Sage 50, 100, 200, X3
- Period: Select fiscal year
- Format: TXT (pipe-delimited)
- Encoding: UTF-8
- Validation: Run internal check before export
- Use Sage bank reconciliation module
- Import CSV from BS Convert via "Importer écritures"
- Map CSV columns to Sage journal entry fields
- Validate balance before finalizing import
Cegid Expert, Loop, XRP Flex
- Exercice: Select fiscal year
- Journal: Include all journals (BQ, VE, AC, OD, etc.)
- Format: Conforme Article A47 A-1
- Test: Run Cegid FEC validator
- Use Cegid "Import bancaire" module
- Upload CSV from BS Convert
- Map to BQ journal code and 512xxx accounts
- Automatic double-entry generation for bank transactions
QuickBooks France (QuickBooks Online)
- QuickBooks Online automatically maintains FEC-compliant data
- Select date range (typically fiscal year)
- Download FEC file
- Use QuickBooks "Importer des transactions bancaires"
- Upload CSV from BS Convert
- Match transactions to QuickBooks categories
- QuickBooks auto-generates FEC-compliant entries
EBP Comptabilité
- Période: Fiscal year
- Format: TXT pipe-delimited
- Validation: Run EBP FEC checker
- Use EBP "Gestion bancaire"
- Import CSV statements
- Auto-reconcile with pending entries
Audit Preparation: Bank Statement Best Practices
Maintain Complete Documentation
- Original PDF bank statements from bank (12+ months)
- FEC file for audit period
- Bank reconciliation reports (monthly)
- Supporting documents for each transaction (invoices, receipts, contracts)
``` /Comptabilité/ /2025/ /Banque/ /BNP-Paribas/ /Relevés-PDF/ 2025-01-BNP-Releve.pdf 2025-02-BNP-Releve.pdf /Imports-CSV/ 2025-01-BNP-Import.csv /FEC-Exports/ 12345678900001_FEC20251231.txt ```
Monthly Reconciliation Discipline
1. Download bank statement on first business day of new month 2. Convert to CSV using BS Convert OCR (< 2 minutes) 3. Import to accounting software 4. Reconcile imported transactions with pending entries 5. Generate monthly bank reconciliation report 6. File PDF statement and reconciliation report
Pre-Audit FEC Validation
1. Generate draft FEC file from accounting software 2. Run Test Compta Demat validator 3. Fix any flagged errors 4. Verify bank account balances match statements 5. Document any unusual transactions
Multi-Entity and Consolidated FEC
Holding Companies with Subsidiaries
- Assign unique journal codes per entity-account combination:
- Entity A BNP account: BQ-A1
- Entity B BNP account: BQ-B1
- Use account prefixes to separate entity accounts in consolidated system:
- Entity A: 512100
- Entity B: 612100 (custom numbering)
- Generate separate FEC exports per entity
Multi-Currency Bank Accounts
``` BQ|Banque USD|BQ000001|20250115|512300|Compte USD|||USD-RELEVE-JAN|20250115|Payment from US Client|4500,00||X||20250115|5000,00|USD ```
- Column 12 (Debit): Amount in EUR (converted at transaction date rate)
- Column 17 (Montantdevise): Original amount in foreign currency (5000.00 USD)
- Column 18 (Idevise): Currency code (USD)
Penalties and Audit Consequences
Non-Compliance Penalties
- €5,000: FEC not provided within 48-hour deadline
- €5,000: FEC file doesn't meet technical specifications
- €5,000 per fiscal year: Missing FEC for multiple years
- Up to €25,000: FEC quality prevents proper audit (incomplete data, errors)
- Rejection of accounting records as audit base
- Estimated taxation (redressement fiscal) based on tax authority assumptions (often higher than actual)
- Extended audit period
- Potential criminal prosecution for tax fraud if willful non-compliance proven
Case Law Examples
2025 Updates and Future Changes
Recent Regulatory Changes
- Bank transaction supporting references (PieceRef) now systematically checked
- Increased scrutiny on account 512xxx reconciliation with bank statements
- Cross-verification between VAT declarations and bank statement receipts
Upcoming Digital Transformation
- All B2B invoices in France will be exchanged electronically via certified platforms
- Integration with accounting systems and FEC generation
- Bank statement reconciliation will link to electronic invoice references
Conclusion: Bank Statements and FEC Compliance
For French businesses, proper bank statement integration into accounting systems isn't optional—it's a legal requirement enforced through FEC compliance. Every transaction on your bank statements must appear accurately in your FEC file with complete supporting documentation, proper account classification, and correct formatting.
Key Takeaways:
- 18-field pipe-delimited format per Article A47 A-1
- YYYYMMDD date format
- Complete bank transaction records (account 512xxx)
- Supporting references (PieceRef) linking to bank statements
- Mandatory for all businesses using accounting software
- 48-hour deadline to provide during audit
- €5,000-€25,000 penalties for non-compliance
- Monthly reconciliation recommended
- Automate bank statement conversion using OCR (BS Convert)
- Validate FEC quarterly using Test Compta Demat
- Maintain original PDF statements for 6+ years
- Use accounting software with FEC export (Sage, Cegid, QuickBooks France)
- 25-30 hours/month time savings
- 99%+ accuracy (reduces audit risk)
- Complete transaction capture (eliminates missing entries)
- Immediate FEC compliance
The combination of proper bank statement processing, automated OCR conversion, and FEC-compliant accounting software ensures your business is audit-ready at all times. Don't wait for audit notification to discover FEC compliance issues—implement best practices now.
Ready to ensure FEC compliance for your bank statements? Try BS Convert's French accounting-optimized OCR that automatically converts bank statement PDFs to Sage, Cegid, or QuickBooks-ready CSV files with FEC-compliant formatting. Export includes all required fields (dates in YYYYMMDD format, proper account references, supporting document links) ready for immediate import into your accounting system.