Functions

How to connect SmartBill with easySales: a complete setup guide

How to connect SmartBill with easySales: a complete setup guide

Connect SmartBill to easySales: where to find the CIF, token and username, every setting on the form, the stock decision that causes most failures, and what each SmartBill error means.

What connecting SmartBill gives you

SmartBill is a Romanian invoicing service, and it is the one most easySales sellers use. Connected, 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. It can also do the opposite job: read your stock levels out of SmartBill and into easySales.

Those are two separate connections with two separate copies of the same credentials. This guide covers both, and says clearly which is which.

Before you start

Your CIF

The fiscal code shown under Configurare → Datele firmei → Generale in SmartBill.

An API token

From Contul Meu → Integrări in SmartBill. It is regenerated whenever you change your SmartBill password.

The account e-mail

The address your SmartBill account is registered with. It is the username half of the credentials.

A decision about stock

Whether SmartBill should take goods out of stock as it invoices. It is a required field, and it is the setting that most often makes invoices fail. Step 4 explains both answers.

Step 1 — Collect three values from SmartBill

Everything easySales needs is already in your SmartBill account.

  • CIF — in SmartBill, open Configurare → Datele firmei → Generale and copy the CIF field.
  • Token — open Contul Meu → Integrări and look for the API information at the bottom of the page.
  • Username — the e-mail address your SmartBill account is registered with.

Step 2 — Open the SmartBill card in easySales

Go to Billing Software and find SmartBill. It is the first card on the page.

The Billing Software screen in easySales filtered to SmartBill, showing the connected SmartBill card with the Romanian flag and an Edit action.
SmartBill on the Billing Software page. It is the first card there.

Press Connect.

Step 3 — Fill in the connection

The top of the SmartBill connection form in easySales showing Connection name, Company registration number, Token, Username (Email), Use stock source and Warehouse name.
The credentials and the stock decision. Company registration number wants your CIF.
Field What to put in it
Connection name Anything that identifies this account to you. Required. Never leaves easySales.
Company registration number Your CIF, from SmartBill's Configurare → Datele firmei → Generale.
Token From SmartBill's Contul Meu → Integrări. It changes whenever you change your SmartBill password.
Username (Email) The e-mail address your SmartBill account is registered with.
The four fields at the top of the form

Step 4 — Decide whether SmartBill should release stock

Use stock source is the single most consequential setting on this form, and the one worth thinking about before you save.

Set to Yes, SmartBill takes the goods out of stock as it issues each invoice. That is what most sellers want — but it means SmartBill will refuse any invoice whose products it cannot release.

Set to No, the invoice is issued without touching stock and none of that can happen.

If you do use Yes, fill in Warehouse name with the name of the SmartBill warehouse exactly as it is written there. It is case sensitive, and it is applied to product lines only — shipping and discount lines never carry a warehouse.

Step 5 — The rest of the form

The lower half of the SmartBill connection form showing Exclude tax on products sending, Collect invoices with receipt, Download invoice locally in easySales with its blue information banner, and the Template box with its variable buttons.
The rest of the form. Nothing below the credentials is required except Use stock source.
Setting What it does Default
Use stock source Whether SmartBill releases stock as it invoices. Required — the form will not save until you answer it. not set
Warehouse name Which SmartBill warehouse the lines are booked against. Case sensitive. Only used when stock release is on. empty
Use payment tax Issues the invoice under VAT-on-collection (TVA la încasare). Only turn it on if your company works that way. No
Save the products in the nomenclature Creates the invoiced products in SmartBill if they are not there yet. Yes
Save products name in the nomenclature No means SmartBill keeps its own name for a product it already knows. Yes
Exclude tax on products sending Sends net prices and lets SmartBill add the VAT itself. No
Collect invoices with receipt Marking an order paid always records the payment as a receipt (Chitanță), whatever the order's real payment method was. No
Download invoice locally in easySales easySales fetches the PDF once and serves it from its own storage instead of asking SmartBill each time. Yes
Template Free text printed on the invoice as mentions and observations. The buttons above the box insert order and product values. empty
The settings below the credentials

Step 6 — Advanced options

The advanced section is collapsed and nothing in it is required. It holds twenty-four settings; these are the ones that solve real problems.

The first part of the expanded SmartBill advanced options showing Invoice model, Block invoice generation if Company VAT ID is missing, Use product description, Invoice language, Issuer CNP, Issuer name, Delegate name and Due date.
Advanced options, first half. Invoice language defaults to Romanian when nothing is chosen.
The second part of the expanded SmartBill advanced options showing Create reverse invoice based on the invoice, Choose product name, Transport service name and code, Autodetect district, VAT rate 0% name, Remove special characters and Transliterate data with its country list.
Advanced options, second half. Transport service name and code only take effect together.
Option Why you would use it
Invoice model Issue proformas instead of invoices from this connection.
Block invoice generation if Company VAT ID is missing Stops an invoice to a company that has no CUI on the order, instead of issuing it wrong.
Invoice language The language SmartBill writes the document in. Romanian if you leave it alone.
Due date / Prioritize client-level payment terms Payment terms in days, and whether a term set on the customer beats this one.
Create reverse invoice based on the invoice Makes a storno a true reverse document built from the original, rather than a new one.
Transport service name and code Names the shipping line on the invoice. Both have to be filled — one alone does nothing, and the line stays Transport.
VAT rate 0% name The name of your zero-rate as it exists in SmartBill's VAT table. Applied only to lines whose rate is 0.
Autodetect district Fills the Bucharest sector from the address when the order does not carry one.
Transliterate data Rewrites customer names and addresses into Latin characters for the countries you tick. Useful for Bulgarian and Greek addresses.
Advanced options worth setting

Issuing invoices

From What it does
Quick Create on the orders list One invoice for that order. Turns red with the error on it if SmartBill refused.
Create Invoice on the order page The same, from inside the order.
Generate invoice as a bulk action Up to 50 selected orders, one invoice each.
A processing group Invoices every order in the group as it is processed.
An automation flow The Create invoice action, so invoicing happens without anyone pressing anything.
Where an invoice can be issued from

When SmartBill refuses an invoice

SmartBill's rejections are passed through word for word, in Romanian, whatever language you use easySales in. They are precise once you can read them. These are the ones sellers actually hit.

What SmartBill says What to do
Cantitate stoc insuficienta la … pentru produsul … Stock release is on and SmartBill does not hold enough of that product in the named warehouse. Load the stock in SmartBill, or set Use stock source to No.
Nu ai facut nicio achizitie pentru produsul … Incarca mai intai stoc pentru produs sau emite documentul fara descarcare de gestiune. Same cause: the product has never been purchased into SmartBill, so there is nothing to release.
Cota tva a produsului … nu a fost gasita pe server! The product's VAT rate does not exist in your SmartBill VAT table. Add it there, or correct the rate on the order.
Seria nu a fost gasita! Folositi o serie creata in contul de cloud. The series easySales sent does not exist in SmartBill. Create it there under the same name, or change the series on the marketplace or website the order came from.
Unitatea de masura … nu are factor de conversie setat. The unit of measure has no conversion factor in SmartBill. Set it on the product there.
Nu puteti adauga produse cu cote tva diferite daca unul din ele are cota TVA inclusa! One line is VAT-inclusive while others are not. Make the document consistent.
invoiceProducts trebuie specificat si trebuie sa contina cel putin un element Every line was filtered out — most often by excluding discounts on an order that contained nothing else.
Firma cu ciful … a expirat la data de … The company registration in SmartBill has lapsed. Renew it in SmartBill.
Nu poti genera documente prin API. Te rog sa reincarci soldul de credite. SmartBill will not issue any more documents over the API until you resolve it in your SmartBill account. Nothing in easySales can clear it.
Autentificare esuata. Va rugam verificati datele si incercati din nou. The e-mail or token is wrong, usually after a password change. Paste the current token in again.
Firma la care incercati sa va conectati nu mai este disponibila in Cloud. The company was removed from SmartBill Cloud.
What SmartBill's most common rejections mean

Cancelling, deleting and reversing

easySales offers Cancel invoice, Delete invoice and Create Storno Invoice on an order. SmartBill decides which of them it will accept.

A storno is a reverse document and always works, which is why it is the answer whenever cancel and delete are refused.

Optional — using SmartBill as a stock source

SmartBill can also tell easySales how much stock you hold. This is a second, separate connection under Stock sources, with its own copy of the CIF, token and e-mail.

The SmartBill stock source form in easySales showing two fields both labelled Warehouse name, with Vat ID, Token, Email and Inventory sync mode between them.
The stock connection. The first Warehouse name is just a label for you; the one lower down must match SmartBill exactly.

Products are matched on the Inventory Code on the product's Stocks tab, falling back to the SKU when that is empty — the same value SmartBill matches invoice lines on. Inventory sync mode decides whether easySales reads only the warehouse you named or the sum of every SmartBill warehouse.

The sync runs every 30 minutes and is strictly one way: SmartBill overwrites easySales, never the other way round. Any stock you edit in easySales is replaced at the next sync.

Frequently asked questions

All three are in SmartBill. The CIF is under Configurare → Datele firmei → Generale. The token is under Contul Meu → Integrări, with the API information at the bottom of the page. The username is the e-mail address your SmartBill account is registered with.

No, paste the CIF. The English label is inaccurate and the German one ("Handelsregisternummer") more so; the Romanian version of the same field says CUI Firmă, which is what it really wants. easySales sends this value to SmartBill as the company fiscal code on every call.

No. easySales does not contact SmartBill when you save, so a wrong CIF, an old token or a mistyped e-mail all save successfully. Issue one invoice immediately after saving — that is the only way to find out.

With that setting on, SmartBill releases stock as it issues the invoice, so it refuses any document whose products it cannot release — either the product has never been purchased into SmartBill, or the warehouse you named does not hold enough of it. These two rejections are nearly three quarters of everything that goes wrong with SmartBill. Load the stock in SmartBill first, or set Use stock source to No and the invoice is issued without touching stock.

The Inventory Code on the product's Stocks tab in easySales, falling back to the SKU when the Inventory Code is empty. Invoicing and stock sync both use it, and it has to match SmartBill exactly, including case and spacing.

No. SmartBill refuses both once a document has been filed with SPV. Deleting is also only possible when the document is the last one in its series. In either case the way out is a storno — a reverse document — which easySales offers on the order as Create Storno Invoice.

The token is regenerated, so every easySales connection using the old one stops working. If you also read stock from SmartBill, that is a second connection with its own copy of the token: update both Billing Software → SmartBill and Stock sources → SmartBill. Invoicing complains immediately with "Autentificare esuata"; the stock connection fails silently and can go on showing the figures from its last successful read.

No. Bulk invoicing takes up to 50 orders at a time and issues one SmartBill document per order. A single invoice covering several orders has to be raised in SmartBill directly.

easySales looks at the marketplace connection the order came from, then the website, then the order itself, and uses the first series it finds. If none is set anywhere it sends INV, which almost certainly does not exist in your SmartBill account and produces "Seria nu a fost gasita". Set the series on your marketplace connections and websites rather than on individual orders.

Was this guide helpful?