Accounting and Invoicing


Installation #

Install the following modules to get all the features of the Egyptian localization:

Name Technical name Description
Egypt – Accounting l10n_eg Default fiscal localization package
Egyptian E-invoice Integration l10n_eg_edi_eta Egyptian Tax Authority (ETA) e-invoicing integration

Egyptian e-invoicing #

CPA Books is compliant with the Egyptian Tax Authority (ETA) e-invoicing requirements.

Register CPA Books on your ETA portal #

You must register your CPA Books ERP system on your ETA portal to get your API credentials. You need these codes to configure your CPA Books Accounting app.

Access your company profile on the ETA portal by clicking on View Taxpayer Profile.

Clicking on "View Taxpayer Profile" on an ETA invoicing portal

Next, go to the Representatives section and then click on Register ERP. Fill out the ERP Name (e.g., Odoo) and leave the other fields empty.

Filling out of the form to register an ERP system on the ETA portal.

Once successfully registered, the website displays your API credentials:

  • Client ID
  • Client Secret 1
  • Client Secret 2

Configuration on CPA Books #

To connect your CPA Books database to your ETA portal account, go to Accounting ‣ Configuration ‣ Settings ‣ ETA E-Invoicing Settings, and set the ETA Client ID and ETA Secret that you retrieved when you registered CPA Books on your ETA portal. Set an invoicing threshold if needed.

Configuration of the ETA E-Invoicing credentials in Odoo Accounting

ETA codes #

E-invoicing works with a set of codes provided by the ETA. You can use the ETA documentation to code your business attributes.

Most of these codes are handled automatically by CPA Books, provided that your branchescustomers, and products are correctly configured.

  • Company Information:
    • Company Tax ID
    • Branch ID
      If you have only one branch, use 0 as the branch code.
    • Activity type Code
  • Other Information:
    • Product Codes
      Your company’s products should be coded and matched with their GS1 or EGS codes.
    • Tax Codes
      Most of the taxes codes are already configured on CPA Books in the ETA Code (Egypt) field. We advise you to make sure these codes match your company’s taxes.

Branches #

Create a contact and a journal for each branch of your company and configure its ETA settings.

To do so, go to Accounting ‣ Configuration ‣ Journals, then click on Create.

Name the journal according to your company’s branch and set the Type as Sales. Next, open the Advanced Settings tab and fill out the Egyptian ETA settings section:

  • In the Branch field, select the branch’s contact or create it.
  • Set the ETA Activity Code.
  • Set the ETA Branch ID (use 0 if you have one branch only).

Sales journal configuration of an Egyptian company's branch

Customers #

Make sure your customers’ contact forms are correctly filled out so your e-invoices are valid:

  • contact type: Individual: or Company:
  • Country:
  • Tax ID: Tax ID or Company registry for companies. National ID for individuals.

Products #

Make sure your products are correctly configured so your e-invoices are valid:

  • Product Type: storable products, consumables, or services.
  • Unit of Measure: if you also use CPA Books Inventory and have enabled Units of Measure.
  • BarcodeGS1 or EGS barcode
  • ETA Item code (under the Accounting tab): if the barcode doesn’t match your ETA item code.

USB authentication #

Each person who needs to electronically sign invoices needs a specific USB key to authenticate and send invoices to the ETA portal through an ERP.

Install CPA Books as a local proxy on your computer #

An CPA Books local server works as a bridge between your computer and your CPA Books database hosted online.

Download the CPA Books Community installer from the page and start the installation on your computer.

Select Local Proxy Mode as the type of install.

Selection of "Local Proxy Mode" during the installation of Odoo Community.

Once the installation is complete, the installer displays your access token for the Odoo Local Proxy. Copy the token and save it in a safe place for later use.

Configure the USB key #

Once the local proxy server is installed on your computer, you can link it with your Odoo database.

  1. Go to Accounting ‣ Configurations ‣ Thumb Drive and click on Create.
  2. Input a Company name, the ETA USB Pin given to you by your USB key provider, and the Access Token provided at the end of the local proxy installation, then click on Save.
  3. Click on Get certificate.

Creating a new thumb drive for the e-invoicing of an egyptian company.