Skip to main content
Pending validationOdoo 20.0Community and Enterprise

How to prepare the COPE report to the Bank of Portugal

What is it for?​

Companies with many transactions with entities in other countries must report them to the Bank of Portugal (Banco de Portugal), the “COPE” (comunicação de operações e posições com o exterior: report of transactions and positions with non-residents). fiscaldoo does three things: it assesses each year whether the company has passed the threshold; it creates a line for each invoice or credit note of a customer or supplier from another country; and it generates the month's file with the lines already classified, with a check of the totals. It does not send anything to the Bank of Portugal: you download the file and submit it in the Bank's application, outside fiscaldoo.

Pending validation by a certified accountant: the annual threshold (250.000,00 € since 15/03/2024), the deadline for starting to report, the choice of statistical code for each transaction and the reading of “Outflow” and “Inflow” on credit notes (Bank of Portugal Instruction no. 27/2012, as worded by Instruction no. 4/2024).

When to use it?​

  • At the start of each year and whenever the panel warns that the company is Close to the threshold or Subject to COPE.
  • Every month in which the company is already reporting: generate the month's lines, classify them and generate the file.
  • It is not for VAT on transactions with other countries nor for the recapitulative statement: those are other screens (see the tax calendar article).

Where to find it?​

Accounting › Declare › Annual declarations › What is there to do with the annual declarations?, Maps and files group, COPE (Bank of Portugal) line. Accountant profile. The list opens with four buttons: Check COPE status, COPE lines, Generate COPE lines and COPE file.

Before you start​

  • Profile in the example: Accountant; the bank code on the company's account (step 6) is saved by the Certified Accountant. The Auditor does not have the Declare menu, so cannot get here through the menus. With the list opened from a link, they only see the COPE lines button (consultation): they cannot check, classify or generate files.
  • Example: Empresa Demonstração, Lda, 2026, with 7 documents with customers and suppliers from other countries (United States, Germany, Spain). The third parties and amounts are made up.
  • Each foreign customer or supplier must have the country filled in, otherwise the document is not included (the screen counts them under “Documents without Third-party country”).
  • Note on the example. The demo company is Exempt (2,4 % of the threshold). The lines and the file are generated all the same, to show the process; an exempt company has nothing to report. The example assumes the payments and receipts went through bank accounts outside Portugal (see “Internal account” below).

How to use it​

  1. Open the annual declarations panel and click COPE (Bank of Portugal). The list has one line per company and year: 2026, Total com o exterior (total with non-residents) 5.992,87 €, Annual exemption threshold 250.000,00 €, Annual threshold reached 2,4 %, Status “Exempt”.

  2. Click Check COPE status to recalculate the current year (fiscaldoo also repeats it on its own every day). The COPE assessment opens: Inflows 1.560,00 €, Outflows 4.432,87 €, Total com o exterior 5.992,87 €, Busiest month September, with 1.376,15 €, Monthly threshold 250.000,00 € and Monthly threshold reached 0,55 %, Documents with abroad 7 and Documents without Third-party country 0. The bar shows one of four situations: Exempt, Subject to COPE (the year's total reached the threshold), Subject: start reporting within 4 months (one month passed the monthly threshold: Start reporting by also appears; with 300.000,00 € in October 2026, 28/02/2027) or Cannot assess (the threshold rule for that date is missing). Below, the Threshold history keeps the rules with the corresponding Bank instruction.

  3. Click Generate COPE lines. Choose From 01/01/2026 and Up to 31/10/2026 (the window only proposes the current month) and click Generate. fiscaldoo creates one line per posted document with a non-resident third party: 7 lines, all To classify. The window warns: “Lines that already exist are kept”.

  4. Click COPE lines: it opens with the To classify filter. Each line has the Date, the Document, the Partner, the Direction (Inflow or Outflow), the Amount in the document's currency and the Counterparty country (taken from the partner). The Statistical code and the Account kind are missing.

  5. Classify several lines at once. Tick the 5 service lines (Cloud Services and Harbor Tech, from the United States, and Software Berlin) and click Classify. Choose the Statistical code D2020 (“Serviços de informática”, IT services) and the Account kind “External bank account”, and click Apply. The window says: “Only the fields you fill in are applied to all the selected lines”. If you fill in the Counterparty country it changes on all the ticked lines, so leave it blank when the lines are from different countries. Do the same for the two Bodega Sol Ibérica lines (invoice and credit note) with code A1010 (“Exportação e importação de mercadorias”, export and import of goods) and the account kind Internal account (resident bank).

  6. Complete each line. A line only becomes Classified when it has everything the Bank asks for, and the screen says what is missing. There are two cases:

    • External bank account or Other external account: open the line and choose the External account country (in the example, the same as the counterparty).
    • Internal account (resident bank): the line shows “Still to fill in: Conta bancária com código de instituição financeira” (bank account with financial institution code). Choose the company's account in Bank account (resident). If the account does not have the code yet, it is saved on the account form: click Internal link, to the right of the field, fill in Financial institution code (COPE) with the 4 digits the Bank of Portugal assigned to the bank and save. In this version, only the Certified Accountant profile can save the code: with the Accountant or the Fiscal officer, the form opens read-only and the line stays To classify until the code is saved. In that case, ask someone with the Certified Accountant profile for the code. In the example, 0033 was used, a sample code. Go back to the line through the breadcrumb at the top.

    Save the line: it becomes Classified and leaves the “To classify” list. If the line was only waiting for the bank code, it becomes Classified as soon as the code is saved on the account.

    • To start again on a line, use Reset classification (it asks for confirmation: “The classification of this line will be cleared. Continue?”). Note: it also resets the Counterparty country, which you must choose again. A line is never deleted.
  7. Click COPE file, choose the Year (2026) and the Month (02) and click Generate file. The window only creates the file: “nothing is sent”. The file name appears (BOP_COPE.509999999.202602.….xml, with the 2 lines, code A1010, the internal account kind and the bank code 0033) along with the Check: “The subtotals of the file are equal to the ones on screen”, by country: Spain, Inflows 600,00, Outflows 600,00, Total 1.200,00, 2 lines, Same. Click the file name to download it.

  8. Submit the file in the Bank of Portugal's collection application, outside fiscaldoo, and correct whatever it rejects. fiscaldoo warns you in the window itself: the file follows the format of the Bank's manual but has not been validated against the Bank's own schema.

Expected result​

  • Each year with an assessment (“Exempt” or “Subject…”) and the totals explained.
  • All the month's lines Classified; one XML file per month. In the example, the February 2026 one (2 lines from Spain, internal account); a month without lines does not generate a file.
  • The check with the result Same for every country (inflows, outflows, totals and number of lines).

Important notes​

  • Institution code. It is on the company's bank account form, with one code per bank. fiscaldoo only checks that it has 4 digits: it does not check that it is the bank's correct code. Pending validation by a certified accountant: the code table in the Bank of Portugal manual (section 7.4) and the code of each of the company's banks.
  • The account kinds are five: Internal account (resident bank), External bank account and Other external account (these ask for the account's country), Clearing account and Sem movimento de conta (no account movement) (these two ask for neither an account nor an account country). Pending validation by a certified accountant: which one to use in each situation (for example, an invoice and its credit note offset against each other).
  • Credit notes. The credit note of the customer Bodega (NC D26/1) appears with the direction Outflow, the opposite of the invoice (Inflow), and the file records both with the amount in absolute value. Pending validation by a certified accountant: whether the Bank wants the credit note as an outflow with the same code, or some other treatment.
  • Suggestion rules. The Accountant and the Fiscal officer can create suggestion rules. Tick the lines and click Apply suggestions: it only fills in the Statistical code and the Account kind that are empty, with the first rule that fits the line. It does not fill in the countries nor show a message, so the line may remain To classify. In the example, a rule for Germany with D2020 filled in the code and the line was left waiting for the Counterparty country.
  • Amounts in the file. The amount is in the document's currency (1500.00 USD), with a decimal point; the check compares in euros.
  • Who can do what. The Accountant does all of this, except saving the bank code on the company's bank account (step 6), which in this version only the Certified Accountant can do. The Auditor consults the lines. The Auditor cannot change the bank account: “O seu perfil (Auditor) é só de leitura” (your profile (Auditor) is read-only).

Common problems​

“The COPE file of 02/2026 cannot be generated: 1 line(s) are still “To classify”. Classify them in “COPE lines” (the Banco de Portugal rejects incomplete records) and generate the file again.”​

  • Cause: the month has at least one line to classify (in the example, the Bodega invoice was missing the external account country).
  • What to do: open COPE lines (To classify filter), complete the line and generate again. The Status column and the “Still to fill in” field say what is missing.

“There are no COPE lines in 07/2026. Use “Generate COPE lines” for the period first.”​

  • Cause: you chose a month without documents with other countries (or you have not generated that month's lines yet).
  • What to do: generate the lines for the period (step 3) or choose the right month.

“The start date cannot be after the end date. Choose a period that starts first.”​

  • Cause: in Generate COPE lines, the From date is after the Up to date (for example, From 01/11/2026 and Up to 31/10/2026).
  • What to do: correct the From date.

“The financial institution code “12” is not valid: it must have four digits (the code the Banco de Portugal assigned to the bank).”​

  • Cause: the bank account's Financial institution code (COPE) does not have 4 digits.
  • What to do: type the 4 digits, with leading zeros (for example, 0033).

The line does not become “Classified”​

  • Cause: one of these fields is missing: Statistical code, Account kind, Counterparty country and, depending on the account kind, the External account country or the bank account with the institution code.
  • What to do: open the line: the tab shows Still to fill in: ….
Versions: Odoo 20.0Community and Enterprisefiscaldoo 20.0 (master d83bdf7ae)ID DOC-0167
Was this page helpful?