View source | View content page | Page history | Printable version   

Projects:IDL Extension Invoices/Functional Specification

Note: This module do not take into account Price List with tax included functionality



There is a project called Initial Data Load: "Within this project it is expected to develop a set of utilities, that will import into a fresh Openbravo ERP installation all the necessary data to start working with it." It's very recommendable to be familiarized with this project before continue reading. Here you have some documentation.

Invoices are not scoped in Initial Data Load project and many customers need to import invoices into their systems.


The purpose of this project is to create a module that implement an Initial Data Load extension for loading Invoices into the system. The source of the data will be CSV files in predefined format. The implementor will have to fill up these files to use the utility.


Fields and Validations

Everything or Nothing

The Load of the file follow the rule "Everything or Nothing". No matters how many lines were correctly processed that if only one was wrong nothing will be loaded. So if something was wrong fix the file and try again.

Document Sequence


Suppose you have two suppliers that send you purchases invoices with the same number sequence but you don't want to take care about the DocumentNo. If you load leaving the DocumentNo in blank with the Order Reference filled the second invoice of the second supplier will show you an error because system think is repeated. To fix this exists AUTO mode.

If you put the word AUTO in the DocumentNo field the invoice will be loaded without checking if there are others in the system with the same DocumentNo.

IMPORTANT: If you use Auto mode the system wont prevent you if you try to load the same file two times!!!!!!

Default Values

You can use Default Values from IDL in almost all fields. They are situated on:

Default values has preference when a field is empty


Prices can be set in three different ways:

1.- Fields Net Unit Price and Field Net List Price of the line 2.- Using Field Price List Version of the line 3.- Using Price List from the Header

Preference rules:


1.- It's empty in the file (CSV) 2.- Don't have a default value in the application



1. Is Sales Order Transaction *


2. Organization *

3. Document No. **

4. Order Reference **

5. Description Header

6. Transaction Document *

7. Invoice Date *

8. Accounting Date

9. Tax Date

10. Business Partner *

Validation: Organization exists in system Mandatory

Partner Address

11. User/Contact

12. Price List


13.Sales Representative / Company Agent

14. Print Discount

15. Form of Payment

16. Payments Terms

17. Project



18. Financial Invoice Line

19. Account

20. Product

21. Description Lines

22. Invoiced Quantity *


23. Price List Version

24. Net Unit Price

25. Net List Price

26. Tax

Line Net Amount


Final Status of Invoice

Field Process

The last field indicates if the invoice will be imported in Draft Status or Completed.

27. Process *

Note: Invoice are processed just after import all the lines so if there is a problem processing one invoice that ends on line X of the file the error will be showed on line (X+1) with a message like this:

 PREVIOUS Invoice with DocumentNo / OrderReference : 100043 / NA1222 can't be processed :  ERROR: The Period does not exist or it is not opened

Field Invoice Loaded by IDL

There is a read-only field on invoices called "Invoice Loaded by IDL" that only appears if the invoice had been loaded with IDL Extension for Invoices.

The possible values are:


Withholding (Only Purchase Invoices)

28. Withholding Only apply to Header

29. Exclude for Withholding Only apply to Lines

Files Example

Files must be codified as UTF-8 to avoid problems with special characters

Files Example

Retrieved from ""

This page has been accessed 691 times. This page was last modified on 19 March 2018, at 10:49. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.