How to manage Invoices
Invoice Sample by OSOE Project.
This visual guide is part of a collection of documents created by the One
Student One ERP (OSOE) project in collaboration with Institut Mines Telecom,
Telecom Bretagne, Dresden University of Technology and the South Westfalia
University of Applied Sciences. It can be used to teach modern ERP theory and
practice to undergraduate students or professionals.
Copyright: You are free to copy, distribute, display, and perform the work
under the following conditions: you must attribute the work in the manner
specified by the author or licensor; you may not use this work for any
commercial purposes including training, consulting, advertising,
self-advertising, publishing, etc.; you may not alter, transform, or build upon
this work. For any reuse or distribution, you must make clear to others the
license terms of this work. Any of these conditions can be waived if you get
permission from the copyright holder through a commercial license or an
educational license. For more information, contact info@nexedi.com
init
openAndWait ${base_url}/Zuite_createFunctionalTestUser
verifyTextPresent Done.
Wait for activities
openAndWait ${base_url}/Zuite_setUpSaleOrderTest
verifyTextPresent Init Ok
Wait for activities
openAndWait ${base_url}/Zuite_setUpSalePackingListTest
verifyTextPresent Init Ok
Invoke simulation alarms
openAndWait ${base_url}/Zuite_setUpSaleInvoiceTest
verifyTextPresent Init Ok
Invoke simulation alarms
Wait for activities
Login As Functional Test User
Agenda
• How to reach an invoice
• How to start, validate and close transaction
• How to print an invoice
Now that we have learned how to generate invoices from Sales Packing Lists in
the previous tutorial "How to Manage Packing Lists", we are going to explain
now how to manage and how to print the invoices.
Reach the Invoice: reach the Packing List
Sale Packing List Module
If you want to edit the sale invoice, you will have to locate it first . This
is a two step procedure :
First, browse the existing Sale Packing Lists from the Modules menu, the same
you would have done for persons or organisations. Please refer to the "How to
create Persons" or "How to create Organisations" tutorials for more
information.
openAndWait ${base_url}
click //input[@name="editable"]
waitForElementPresent //a[contains(text(),
"ZUITE-TEST-SALEORDER-PRODUCT-001")]
click //a[contains(text(),
"ZUITE-TEST-SALEORDER-PRODUCT-001")]
Reach the Invoice: jump to "Related Sale Invoice Transaction"
Related Sale Invoice Transaction
Now you can reach the sale invoice directly from the related Sale Packing List.
First, make sure that the Packing List has been shipped or delivered . You can
find that information on the View tab of the Sales Packing List “State”.
Now that you have checked the status, please click on the "Related Sale
Invoice Transaction" on the sidebar. Then you will be directed to the related
sales invoice.
Note that an error may return: "No Related Sale Invoice Transaction" . This
means that either the Sale Packing List status is not appropriate, or you just
changed the status, and you have to wait at least 30 seconds for the system to
take the changes into account.
tal:block>
Check Sale Invoice Tabs
Check Sale Invoice Tabs
Read the message that appears on the bottom right corner of the screen, you are
now landed on the related sale invoice. The tabs of this invoice document
incorporates lots of information, which comes directly from the initial Sale
Order as well as from the Sale Packing List.
In theory, there should not be anything here to fill out. The first step before
trying to start the accounting transaction, is to check that the information
provided by the sale invoice is correct. As most fields have been updated from
your information, there shouldn't be any changes to implement, but one can
never know, so we recommend you to check the information in every tab in your
invoice document.
When complete, click on the "Accounting View" tab on the sidebar, and jump to
the next page to start the accounting transaction of the order .
Journalise Transaction
Journalise Transaction
In order to do an accounting transaction you have to initiate it .
An accounting transaction is a three step procedure :
First, you need to start the transaction, which means that the accounting lines
will be created. In accounting terms, this is called Journalise Transaction .
The second step is to validate the transaction, once you have checked the
different accounting lines that have been generated automatically by ERP5. In
accounting terms, this is called Post Transaction To General Ledger . Once
those two steps are over, you can Definitively Close Accounting Transaction .
Be careful: once the transaction is closed, you will not be able to modify it.
This is why some companies do not close their transactions until the end of
their accounting period.
As you can see in the screenshot of the "Accounting View" tab of the invoice,
the state is "Confirmed", and there is not any "Accounting Transaction Lines"
yet. To start the transaction, click on the line "Journalise Transaction" on
the sidebar, then you will see on the next page, this will create the first
accounting lines .
waitForElementPresent //a[contains(text(), "Journalise
Transaction")]
tal:block>
waitForElementPresent //p[@id=
"field_my_translated_simulation_state_title"]
verifyText //p[@id= Journalised
"field_my_translated_simulation_state_title"]
Check the Accounting Transaction Lines
Accounting Lines to Check
Before trying to go further in the accounting process, we will analyse what
changes occurred on the invoice document after we journalised transaction.
First, as you can see highlighted on the screenshot, the state has changed from
"Confirmed" to "Journalised". This means that ERP5 has created some accounting
lines for your transaction.
Note: It can take up to 5 minutes for the accounting lines to be created. You
might have to refresh the page, if you don't see the accounting lines.
This is the second part of the analysis: as you can see in the screenshot, the
first accounting transaction lines have been created. They are automatically
created by ERP5, and, if you can read the accounting lines, they represent your
transaction. In our example, the sell account should be credited with 100000€.
If you did not yet subscribe to ERP5, you may not know that more than one
accounting plan is available. On this screenshot, the French accounting plan is
used, but many others are available. We already have accounting plans catered
especially for Africa and Japan, and we are constantly working on developing
more plans that will be available soon.
Note that a transaction can be modified as long as it is at "Journalised"
state.
However, even though the accounting transaction lines have been created, but
they have not been validated yet. To validate the transaction, you have to
acting "Post to General Ledger". Please see next page.
Post Transaction
Post Transaction To General Ledger
Once you have checked all the accounting transaction lines, you can validate
them.
To do so, please click on "Post Transaction to General Ledger" on the sidebar
and jump to next page.
tal:block>
waitForElementPresent //p[@id=
"field_my_translated_simulation_state_title"]
//p[@id= Posted to
verifyText "field_my_translated_simulation_state_title"] General
Ledger
Validated transaction
Validated transaction
After "Post to General Ledger", as shown in the screenshot, the invoice state
changed from "Journalised" to "Posted to General Ledger" . In fact, this state
is similar to "Journalised", unless it has to be seen as a transition state
between “Journalise” and “ Definitely Closed” state to indicate that the
transaction has been validated.
When validated by acting "Post Transaction to General Ledger", a transaction
can still be modified. If you browse the sidebar, you will find a line that is
called "Restart Transaction (journalise)" , which helps you invalidate the
transaction and go back to the “Journalised” state, as showing on this
screenshot:
Post transaction
Now let's go back to "Posted to General Ledger" state, the “Post Transaction to
General Ledger” action ensures that the transaction has been accepted, and the
management has been transferred from sales department to accounting department
.
Once this is done, the next step will be to close the transaction, as shown on
the next page.
Definitively Close Transaction
Definitively Close Accounting Action
The very last step of managing an invoice is to “Definitively Close ” the
accounting transaction.
Once this is done, you will not be able to go back to another state , which
means that you will not have the possibility to modify the transaction.
Close the transaction only when you are absolutely sure that the details,
figures, etc. are correct . Some companies for instance, are accustomed to
closing all the transactions at the end of the year.
To close a transaction , click on“ Definitively Close Transaction ”on the
sidebar. Once this is done, the state of the transaction will be changed from
"Posted to General Ledger" to Closed , and you will be able to create a payment
for it, as we will see on the next tutorial “How to create a Payment”.
tal:block>
waitForElementPresent //p[@id=
"field_my_translated_simulation_state_title"]
verifyText //p[@id= Closed
"field_my_translated_simulation_state_title"]
Printing the invoice (1)
Print Button 1
Print Button 2
ERP5 allows you to print the invoices you have created.
We will now explain how you can easily print an invoice you just created. You
can print an invoice at any state, even if the transaction is not closed yet.
The first step to print an invoice, is to click on the Export button on top of
the invoice sheet, as you can see on the screenshot.
Clicking this icon will open a new window in which you will be able to click
on Print Invoice to go to print setting page .
Printing the invoice (2)
Print Sale Invoice Transaction Dialog
The print setting page is now open, so you can browse the different menus to
choose which kind of print you need.
Firstly, choose the language of your print, in our example, the language can be
either set to French or English. Secondly, choose the format of your print.
When you are done, click the "Print Invoice" to create a physical copy of the
document. You can either print directly with your printer , or save a copy of
the invoice into PDF or other formats to keep it on your computer, so you can
print it or send it by email later.
Wait for activities
Login As Manager
open ${base_url}/Zuite_tearDownSaleOrderTest
verifyTextPresent Clean Ok
Wait for activities