How to connect FGO with easySales: a complete setup guide
Connect FGO to easySales: the three steps to do in FGO first, every connection setting, how invoices are issued, what each FGO error means, and using FGO as a stock source.
What connecting FGO gives you
FGO is a Romanian invoicing service. Connected to easySales, it issues the invoice for an order without you retyping anything — from the orders list, from the order itself, in bulk, or automatically from a flow. The same FGO API user can also be used a second time, separately, to read stock levels out of FGO into easySales.
Before you start
An FGO account with API access
The API user in step 1 can only be created on an FGO plan that includes API access. Check yours in FGO before you start.
An API user created inside FGO
Not your normal login. FGO generates a password for it, and that password is what easySales calls the Private key.
Your CUI
The fiscal code shown under Setări → Firmă in FGO.
An invoice series ready to use
With API permissions, a valid period and numbers still available. This is the step most often missed.
Steps 1 to 3 happen in FGO, not in easySales. Each one has a distinct failure, and skipping any of them produces an error message that only makes sense once you know what it refers to — so it is worth doing all three before you open easySales.
Step 1 — Create the API user in FGO
In the FGO administration panel open Setări → Utilizatori and add an API user. FGO generates a password for it: copy that value now, because it is what easySales calls the Private key.
Step 2 — Let FGO accept calls from easySales
In FGO open Setări → eCommerce → Setări API and add https://easy-sales.com to the list of sites allowed to connect by API.
Step 3 — Prepare the invoice series
In FGO open Setări → Serii Documente and check the series you intend to invoice with. It needs the User API permission — both on the API user itself and on the "all users" entry — and a From / To period that covers today with numbers still left in it.
Step 4 — Connect FGO in easySales
Go to Configuration → Integrations → Billing Software and find the FGO card.
Press Connect and fill in the form.
| Field | What it does |
|---|---|
| Connection name | Required. Your own label. It becomes the tab name if you connect more than one FGO account. |
| Company registration number | Required. Your CUI, as FGO shows it under Setări → Firmă. |
| Private key | Required. The password FGO generated for the API user in step 1. It is shown in clear on this form rather than masked. |
| Types of Invoices | Which FGO document type to raise — Factura for an ordinary invoice, and eleven options in all, including Proforma, Aviz, reverse charge and the margin scheme. |
| Product correlation method | How easySales tells FGO which article a line refers to. SKU sends the product's inventory code, falling back to its SKU. Name sends no code and lets FGO match on the article name. |
| Use stock source | Required, but it changes nothing for FGO. What actually makes FGO deduct stock is the Saga Warehouse Code below. |
| Saga Warehouse Code | The FGO warehouse each invoice line is booked against — this is what makes FGO take the goods out of stock. Type it exactly as it is named in FGO. Leave it empty if you do not track stock there. |
| Template | Free text printed in the invoice's notes. The buttons above insert placeholders — order id, AWB number, courier, payment method, or a list of the ordered products. |
Step 5 — Advanced options
The advanced section is collapsed and nothing in it is required, but two of its settings solve problems that are otherwise hard to diagnose.
| Setting | What it does |
|---|---|
| Charge identification codes | Maps shipping, discount and fee lines onto the article codes you use in FGO. Give each a slug, the text the charge's name contains, and the FGO article code. Without it those lines arrive as unmatched articles. |
| Use product description | Chooses what goes into the description column on the invoice — nothing, the product code, its name, its properties or its EAN. |
| Choose product name | Which of the three names easySales holds is printed: the warehouse name, the catalogue name or the offer name. |
| Display gift products as separate discount | Puts free items on the invoice as a discount line rather than a zero-priced product. |
| Remove special characters | Strips special characters from customer names and addresses before sending. Useful when FGO rejects a diacritic or a symbol. |
| Generate a warranty upon invoicing | Creates a warranty certificate at the same time, from a template you pick, and can merge it into the same PDF as the invoice. |
| Exclude discounts from invoices | Leaves discount lines off the document entirely. |
Step 6 — Tell easySales which series to use
The connection does not carry a series. easySales resolves one per order, in this order: the series set on the marketplace connection the order came from, then the one set on the website, then the one already on the order itself.
Issuing invoices
| From | Control | Series |
|---|---|---|
| The orders list | Quick Create in the invoice column | Taken from the order |
| An order's own page | Create Invoice | Taken from the order |
| The orders list, several at once | Generate invoice — up to 50 orders, one invoice each | Resolved per order |
| A processing group | Create Invoice | Resolved per order |
| An automation flow | The create-invoice action | Resolved per order |
When an invoice fails
FGO's rejections are passed through word for word, in Romanian, whatever language you use easySales in. They are precise once you can read them.
| What FGO says | What to do |
|---|---|
Platforma https://easy-sales.com nu este inregistrata in FGO
|
Step 2 was skipped. Add the address in FGO under Setări → eCommerce → Setări API. |
Registrul pentru seria … nu este definit sau a expirat.
|
The series has no API rights, its period has lapsed, or it has run out of numbers. Check all three in Setări → Serii Documente. |
Campul 'Serie' este obligatoriu.
|
No series reached FGO at all. Set one on the marketplace connection or the website. |
Hash-ul transmis nu este corect.
|
The private key is wrong or was rotated in FGO. Paste the current one in again. |
Utilizatorul nu exista sau nu are drepturi de acces.
|
The API user was deleted or lost its rights. Recreate it in Setări → Utilizatori. |
Codul unic nu exista sau nu este asociat.
|
The Company registration number does not match the CUI on the FGO account. |
Campul Client[CodUnic] este obligatoriu.
|
The customer is a company but the order carries no CUI. Add it to the order's billing details. |
Judetul … nu exista in nomenclator
|
The billing address has no county, or one FGO does not recognise. Pick the county on the order. |
CotaTVA … nu exista in nomenclator.
|
The VAT rate on a line does not exist in FGO. Add that rate in FGO, or correct it on the order. |
Factura este deja stornata.
|
A credit note already exists for this invoice. |
Factura a fost transmisa in SPV. Nu se poate anula.
|
The invoice has been filed with ANAF and can no longer be cancelled — issue a credit note instead. |
Optional — using FGO as a stock source
FGO can also tell easySales how much stock you hold. This is a second, separate connection under Configuration → Integrations → Stock sources, using the same CUI and the same API user password, and it has to be attached to a website before anything syncs.