France EI Extension Plug-in
The European Union Electronic Invoicing SuiteApp lets you extend the electronic invoicing functionality for France by creating and implementing a custom plug-in.
For more information, see the following topics:
Extending France Electronic Invoicing Functionality
If you need to extend the existing France Electronic Invoicing functionality in NetSuite, create a custom plug-in implementation and leverage the localization extension service for France.
Overview
The France Electronic Invoicing solution includes an extension service that enables you to reuse standard localization logic and apply custom modifications to E-document content.
Using the France Extension Service
To extend the standard functionality, you must import the France extension service using the exact path below:
/SuiteApps/com.netsuite.euelectronicinvoicing/src/countries/FR/services/FRDocExtensionService.js
This path is fixed and can't be changed.
After importing the service, call the .extend(context) method to retrieve content processed by the SuiteApp. You can modify the content as needed and return it in the content field of the response object.
Example Implementation:
* @NApiVersion 2.0
* @NScriptType plugintypeimpl
*/
define([
"/SuiteApps/com.netsuite.euelectronicinvoicing/src/countries/FR/services/FRDocExtensionService.js"
], function (FRDocExtensionService) {
function extend(context) {
// Import France Localization functionality
let extendedContent = FRDocExtensionService.extend(context);
// Run your own code / functionality here
extendedContent = /* ... */ extendedContent;
return {
success: true,
// Ensure that you return the extended content
content: extendedContent
};
}
return {
extend: extend
};
});
Creating the Plug-in for France
To create your custom plug-in implementation:
-
Go to Customization > Plug-ins > Plug-in Implementations > New.
-
In the Script File field, create a new plug-in implementation using your script.
-
Click Create Plug-in Implementation to save your plug-in.
For more information, see Creating a New Plug-in Implementation.
Template Customization and Extension
EN16931 and FRCTC Extended standards support more data than standard templates expose by default.
Data Model Extension:
-
Create Custom Fields or Records within your NetSuite account to fit your requirements
Template Mapping & Extension:
-
Copy the existing France Template
-
Modify template during the generation of the UBL Document using Outbound Extension Plug-in script
Outbound Extension Plug-in Customization:
-
Extends e-document generation logic
-
Enables to modify XML structure by adding, removing, or updating XML nodes and its sourcing
If you modify the standard France E-Invoice template, any European Union Electronic Invoicing SuiteApp update will revert it back to the default plug-in. If you create your own E-document Package and Template, it won't be affected by the SuiteApp updates. However, it will also not automatically receive future updates to the standard template.
Limitations
Scope (EI v10.3 + EUEI v1.6) - Only B2B & B2G mandates are supported
Transaction Limitations:
-
Credit notes are not supported (as Document References are not exported yet)
-
No validation or automation in NetSuite
Data Limitations:
-
Units of Measure and Payment Means Code are hardcoded
-
Payment instructions (from Advanced Localized Features SuiteApp and Electronic Bank Payment) are not exported in the UBL file.
-
Document References (from Advanced Localized Features SuiteApp) are not exported in the UBL file.
-
Transaction Third Parties (from Advanced Localized Features SuiteApp) are not exported in the UBL file.