France e-reporting is the mandatory electronic transmission of transaction and payment data to the French tax authority (DGFiP) for all transactions outside domestic B2B e-invoicing. ZoneCapture automates the generation, formatting, and submission of these reports directly from NetSuite, using Ecosio as the approved platform partner (Plateforme Agréée).
Note: Clicking on the images within this guide will enlarge them for better viewing.
Important: E-reporting compliance is the customer's responsibility. ZoneCapture provides the tools to generate and submit e-reports, but your organization must determine which reporting rules apply to your transactions, monitor your reporting deadlines, and initiate submissions on time. Before using this guide, review your VAT obligations internally to confirm which e-reporting streams (seller-side, buyer-side, or payment data) apply to your business, and generate submissions within the required periods.
Overview
Under the French electronic invoicing reform, e-reporting covers transactions that are not subject to domestic B2B e-invoicing (facturation électronique). E-invoicing handles structured exchanges between 2 French-established entities, while e-reporting gives the tax authority full visibility of VAT liability and revenue for all remaining transaction types.
Important: A transaction is either e-invoiced or e-reported, never both.
E-reporting applies to all French VAT-registered companies and French subsidiaries that process transactions not covered by domestic B2B e-invoicing.
Scope breakdown
| Stream | In-scope transactions | Reporting flow |
|---|---|---|
| Seller-side: Cross-border B2B | Sales to foreign business customers (EU and non-EU). ZoneCapture transmits detailed transaction data per invoice. | Flow 10.1 (VRBL:FR:SALES) |
| Seller-side: B2C and non-VAT entities | Sales to individual consumers, non-taxable persons, and distance sales (e-commerce). ZoneCapture reports these in daily or periodic aggregated totals. | Flow 10.3 (VRBL:FR:SALES) |
| Buyer-side: Foreign purchases | Intra-community acquisitions and foreign service purchases where French reverse-charge VAT applies. | Flow 10.1 (VRBL:FR:PURCHASES) |
| Payment data (services only) | Payment collection data for service transactions, required for entities under the cash-basis VAT regime (TVA sur les encaissements). | Flow 10.2 and Flow 10.4 |
How ZoneCapture identifies transactions
ZoneCapture evaluates customer master data and transaction parameters to determine whether a transaction qualifies as cross-border B2B or B2C.
International and cross-border B2B transactions
- Customer location: The customer's Billing Address Country is outside France (an EU member state or non-EU/Rest of World).
- Tax identification: A valid VAT Registration Number (or international tax identifier) is present on the Customer record.
- Reporting mechanism: ZoneCapture submits data at a granular, per-invoice level under Flow 10.1.
B2C transactions
- Customer profile: The transaction is issued to an individual consumer, an entity without a registered VAT number, or through e-commerce distance selling.
- Tax identification: No VAT registration number is associated with the Customer record.
- Reporting mechanism: The data qualifies under Flow 10.3. ZoneCapture aggregates it into periodic or daily summary totals in the background file transmission.
Prerequisites and setup
General prerequisites
- ZoneCapture SuiteApp: Install ZoneCapture (v2.22.2 or later) in NetSuite.
- E-Document Station: Configure an active E-Document Station record with Ecosio selected as the API Provider (acting as the Plateforme Agréée).
- ZoneCapture Subsidiary Setup: Configure the ZoneCapture Subsidiary Setup record and select the E-Reporting Enabled checkbox.
User roles and permissions
Assign the following permissions to the relevant NetSuite roles so users can generate, view, and monitor e-reports.
- Custom record permission: Grant at minimum View, Create, and Edit permissions for the French E-Reporting Submission record (
customrecord_zc_ereporting_submission). - Transaction and master record access: Grant users who generate e-reports read access to transaction records (Invoices, Credit Memos, Vendor Bills, Vendor Credits, and Customer Payments) and master records (Customers, Vendors, and Tax Codes).
Master data and transaction fields
Customer and vendor records
- Verify the Billing Address Country is accurate. This field determines the domestic versus cross-border logic.
- Enter a valid VAT Registration Number on all business Customer records (EU and non-EU) and EU Vendor records.
Sales transactions (invoices and credit memos)
- ZoneCapture populates the Invoice Subtype Code automatically from the Subsidiary Setup record. Adjust it on individual transaction headers when a specific invoice differs from the subsidiary default.
- When E-Reporting Enabled is selected in the Subsidiary Setup record, a banner appears on sales and purchase transactions if the Invoice Subtype Code is empty.
Vendor bills and vendor credits
- Set Reverse Charge Code to
Ton reverse-charge tax codes. To verify, navigate to Setup > Accounting > Tax Codes.
How ZoneCapture processes e-reporting
Independent reports per subsidiary and stream
Important: You cannot submit e-reports as a consolidated multi-subsidiary or multi-stream batch. Generate a separate report for each combination described below.
- Generate a separate report for every French subsidiary (each unique SIREN).
- Generate a separate report for each reporting stream within that subsidiary:
- Sales and transactions (cross-border B2B and B2C)
- Buyer-side purchases (foreign purchases and reverse-charge)
- Payment data (TVA sur les encaissements and services). Note: This stream will be available with ZoneCapture 2.23.0.
Each stream and subsidiary selection generates 1 independent e-report submission record and transmission payload.
User interface line-item visibility and background aggregation
- User interface (ease of review): The selection interface displays all qualifying transactions as individual, granular line items. Finance teams can review, verify, and deselect specific transactions before generating the report.
- Background file aggregation: For streams that mandate summary-level reporting (such as B2C sales under Flow 10.3), ZoneCapture aggregates and groups the data by date and tax rate automatically in the background during payload generation. ZoneCapture structures the resulting consolidated totals into the XML payload (VRBL format) submitted to Ecosio and the Portail Public de Facturation (PPF).
How to send and track status
Step-by-step submission process
- Access the selection interface: In the ZoneCapture menu of the Zone Control Center, click Create e-report.
Define the subsidiary, data type, stream, and period: Select the French subsidiary, the data type (transaction or payment), and the reporting stream (sales or purchase). Choose the Reporting Period / Date Range, then click Apply Filters.
Important: The date range is driven by the invoice or transaction date, not the NetSuite system creation date.
Review transactions: Review the list of qualifying transactions. Deselect any transactions to exclude from this batch.
- Generate and submit: Click Process X selected. ZoneCapture creates a unique E-Reporting Submission record and compiles the VRBL payload (
VRBL-Transactions-FR-1p0orVRBL-Payments-FR-1p0) in the background. Ecosio automatically converts the payload into the official DGFiP Flow 10 format and transmits it to the PPF. - Open the E-Reporting Submission record: When ZoneCapture creates the submission record, a success banner appears with a link to it. Click the link. Alternatively, click the Pending list, and then click View next to the submission record.
- Submit the record for e-reporting: Review the record and confirm its status is Waiting to be submitted. Click Send for E-reporting.
- The record refreshes and the status changes to Processing. The record moves from the Pending list to the Delivered list.
Tracking statuses and error handling
NetSuite tracks each e-reporting submission on its dedicated French E-Reporting Submission record. As the payload moves through generation, transmission via Ecosio, and delivery to the PPF, the record status updates automatically.
E-reporting submission statuses
| Status | Meaning | Next step or user action |
|---|---|---|
| Waiting to be submitted | ZoneCapture created the submission batch and payload, and they are ready for initial review. | Review the record and click Send for E-reporting. |
| Processing | ZoneCapture is actively generating the file and submitting it to Ecosio. | No action required. Background scripts process the submission automatically. |
| Sent | The payload passed initial validations and was successfully transmitted to Ecosio. | No action required. The PPF has not yet sent its final acknowledgment. |
| Delivered | The PPF successfully received and accepted the report from Ecosio. | Complete and compliant. No further action required. The submission is final and locked. |
| Exception Customer / Handled | A validation failure or data error occurred during file preparation or submission to Ecosio. | Review the error details in the Response Logs subtab, correct the underlying transaction or master data, and click Resend for E-reporting or Reject. |
| Delivery Failed | An issue occurred on the Ecosio side while attempting to deliver the file to the PPF. | Review the log details, resolve any reported technical or transmission issues, and retry the submission or contact support. |
| Rejected by User | A user manually rejected and abandoned the submission record. | End of lifecycle. The record is permanently locked and cannot be submitted to Ecosio. |
Error handling and response logs
If a submission encounters errors or fails validation during processing:
- The status updates to Exception Customer, Handled, or Delivery Failed.
- ZoneCapture logs detailed error descriptions and failure reasons under the Response Logs subtab on the submission record.
- Review the log messages to identify the exact cause (such as missing mandatory VAT IDs, invalid reverse-charge setups, or schema mismatches). Then correct the underlying NetSuite transactions or entity records.
Resubmitting a corrected report
After you correct the root cause of an error, resubmit the report:
- Open the failed French E-Reporting Submission record.
- Click Resend for E-reporting.
- Review the informational banner that appears at the top of the record: Information: Regenerating the file. It will be submitted automatically once ready — this may take several minutes and you can leave this page. Refresh the record to see the updated status.
- Wait while the generation workflow restarts from the beginning to compile the updated transaction data.
Important: Unlike the initial creation process, ZoneCapture automatically submits resubmitted records to Ecosio once it regenerates them, skipping the manual review step.
Rejecting and abandoning submissions
Reject a submission when the record contains invalid data that should not be transmitted, or when you need to abandon a failed batch.
- Action: Click Reject on the submission record.
- Result: The record status changes to Rejected by User, which permanently ends the lifecycle for that submission. The record is locked and can no longer be processed, regenerated, or submitted to Ecosio.
- Button availability:
- Available: Reject is available before initial submission and when a record is in a failure or exception state (Exception Customer, Handled, or Delivery Failed). In a failure state, you can either correct and retry (Resend for E-reporting) or abandon the record (Reject).
- Not available: Once a record is actively transmitted or finished (Sent or Delivered), you cannot reject it.