Who is this article for? This article is intended for merchants who do not wish to use Pennylane as their approved platform (PA) for issuing their invoices, and who have designated another approved platform. It explains how to regularly retrieve your invoices through the ProAbono API so you can forward them to your approved platform yourself.
Background: approved platforms
Under the electronic invoicing framework, a company has:
- a single approved platform configured for reception (for invoices issued by its suppliers);
- one or more approved platforms configured for issuance (to send invoices to its customers).
A single company may therefore have several approved platforms. For example:
- one PA configured for the reception of supplier invoices;
- one PA (Pennylane) configured for the issuance of customer invoices generated by ProAbono;
- another PA configured for the issuance of invoices generated by a different billing software used by another part of the company’s business.
If you have chosen not to use Pennylane to transmit the invoices generated in ProAbono, you must retrieve those invoices yourself and forward them to your own approved platform. That is the purpose of this article.
Principle: the ProAbono back-office API
Invoices are retrieved through the ProAbono back-office API, by date range. Dates are expected in ISO format YYYY-MM-DD (for example 2026-07-22). Two complementary operations should be run regularly (for example daily):
- Retrieve newly issued invoices — based on their issue date.
- Retrieve invoices that have become paid — based on their last update date.
The isCredit parameter
There are two types of invoices: invoices and credit notes. The isCredit parameter distinguishes between them. Each step below must therefore be run twice:
- isCredit=false → invoices
- isCredit=true → credit notes
Step 1 — Retrieve newly issued invoices
- GET /Finance/Invoices?isCredit=false&DateIssueMin=YYYY-MM-DD&DateIssueMax=YYYY-MM-DD
- GET /Finance/Invoices?isCredit=true&DateIssueMin=YYYY-MM-DD&DateIssueMax=YYYY-MM-DD
Important
- The DateIssue field (issue date) is used to detect newly issued invoices within the requested period.
- For each returned invoice, download the PDF from the hosted-pdf link provided in the response.
Step 2 — Retrieve invoices that have become paid
- GET /Finance/Invoices?isCredit=false&DateUpdateMin=YYYY-MM-DD&DateUpdateMax=YYYY-MM-DD&StatusInvoice=Paid
- GET /Finance/Invoices?isCredit=true&DateUpdateMin=YYYY-MM-DD&DateUpdateMax=YYYY-MM-DD&StatusInvoice=Paid
Important
- The StatusInvoice=Paid filter also includes refunded invoices.
- The DateUpdateMin field (last update date) is used to detect any change, regardless of the invoice’s age. An invoice issued before the queried period but paid recently will therefore still be returned.
Summary
| Goal | Date filter used | Status filter | Run for |
| Detect newly issued invoices | DateIssueMin / DateIssueMax | — | isCredit=false and isCredit=true |
| Detect invoices that have become paid (or refunded) | DateUpdateMin / DateUpdateMax | StatusInvoice=Paid | isCredit=false and isCredit=true |
By combining these two calls for each period, you obtain both the new invoices and credit notes, as well as any status updates, ready to be forwarded to your own approved platform.