Setting Up the Connector

This page takes a fresh machine to a working connector: install it, choose how invoices are signed, connect your ERP, map your tax codes, and — if you use the Odoo cash register — switch on the Odoo POS endpoint.

Work through it in order. Each step depends on the one before it.

Before you start

  • A Windows PC or server that stays on, on the same network as your ERP.

  • Your signing option ready. Either the SDC on your network, running on a Pro licence with its secure element ready (a Lite licence is not enough — check the SDC's License tab, and see Applying a License), or a FiscoBridge Cloud POS subscription with an API key and a constant internet connection. Two ways to sign explains how to choose.

  • ERP API access licensed and reachable from that machine.

  • An ERP Connector activation key from the Customer Portal, one per machine. This is a separate licence from the SDC's or Cloud POS's, and you need it whichever way you sign.

1. Install ERP Connector

  1. Run the ERP Connector installer (Installer.msi) on the machine that will host the connector.

  2. Accept the licence agreement and install. The app is installed to C:\Program Files\ERP Connector and a desktop shortcut is created.

  3. Launch ERP Connector from the desktop shortcut.

The installer also adds a Windows Firewall rule named ERP Connector - Odoo POS, allowing TCP port 8890 from the local subnet. That rule only matters if you use Odoo Point of Sale; it is harmless otherwise.

The connector keeps its database, licence and logs in %LOCALAPPDATA%\ErpConnector, so it runs correctly from a read-only install folder.

Keep it running. Closing the window hides the app to the notification area — it keeps polling. Use the tray icon's Exit to actually stop it. Only one copy runs at a time; launching it again brings the running window to the front. Switch on Start on login in the top-right of the window so the connector comes back after a restart.

2. Choose how invoices are signed

Every integration and the Odoo POS endpoint share one signing choice.

  1. Open the Fiscalization tab.

  2. Under How do you want to sign invoices?, pick one of the two cards.

Local fiscal device (SDC) — signs through the SDC application on your network. It keeps working while the internet is down, but needs the SDC running.

  1. Enter the SDC URL. If the SDC runs on the same machine, that is http://localhost:8888.

FiscoBridge Cloud POS — signs in the cloud, so there is no SDC, smart card or reader to maintain. It needs an internet connection and an active Cloud POS subscription.

  1. Enter your Client ID and Client secret. These are the API key pair from your FiscoBridge account — How to get your API keys walks through creating one.

  2. The secret is stored encrypted and shown blank afterwards. Leave the field empty to keep the stored secret, or type a new one to replace it.

Then click Save, and Test. The check always runs against the saved settings, so an Unsaved changes badge means Test is still checking the old ones.

The pill in the window header shows the live state of the option you picked, re-checked every 30 seconds:

Pill

Meaning

SDC connected

The SDC answered and the secure element is ready.

SDC needs attention

The SDC answered, but is not ready to sign — open the SDC application and finish its setup, and check the smart card.

SDC not reachable

Nothing answered at that address. Check the SDC is running, and the address and port.

Cloud POS connected

Cloud POS accepted your API key and is ready to sign.

Cloud POS: check API key

Cloud POS rejected the Client ID or secret. Re-enter them.

Cloud POS unavailable

Cloud POS answered but is not ready to sign — check your subscription, or try again shortly.

Cloud POS not reachable

The connector cannot reach the internet or FiscoBridge. Check this machine's connection.

Nothing is fiscalized while the pill is not green, so fix this before moving on. You can switch between the two options later without losing anything — see Switching between SDC and Cloud POS.

3. Connect your ERP

Open the ERP integrations tab and click Add integration. You can add as many as the site needs — one per company file or per ERP.

Step 1 — name it and pick the system. Give the integration a name you will recognize in the invoice list (EXO Live, Odoo Fiji), then choose the ERP.

Step 2 — enter the connection details.

Field

EXO

MYOB AccountRight

Odoo Accounting

Sage 300

API URL

http://exo-server:8080

http://localhost:8080/accountright (filled in for you)

http://odoo-server:8069

http://sage-server/Sage300WebApi

Database

—

—

Odoo database name

—

Username

EXO API user

Company file user (Administrator is filled in)

Odoo user

Sage 300 user

Password / API key

EXO password

Company file password — blank if the file has none

Odoo API key

Sage 300 password

EXO token

Required

—

—

—

Developer key

Required

—

—

—

Company ID

Required

Required — Discover lists your company files

Required — Discover lists them

Required

Click Test connection before creating. A successful test reports how many tax codes the ERP returned — that number is also your first sign that the credentials reach the right company.

For Odoo, click Discover once the URL, database, username and API key are filled in. The connector lists the companies in that database and fills the Company ID for you. MYOB AccountRight works the same way — see below.

Click Create. The integration is created with sensible fiscalization defaults, and switched off — nothing is polled yet.

Connect MYOB AccountRight

This is for MYOB AccountRight desktop company files that live on your own computer or network. The connector reaches them through MYOB's own local API add-on (the AddOn Connector), which is installed with AccountRight and has to be running on the same computer as ERP Connector whenever invoices are fiscalized.

  1. Open MYOB AccountRight and sign in to the company file.

  2. In ERP Connector, add an integration and choose MYOB AccountRight. The API URL and username are already filled in; enter the company file password.

  3. Click Discover. If the add-on is not running, the connector says so and shows an Activate API add-on button. Press it and follow the three steps in the window that opens:

    1. Open MYOB AccountRight and sign in to the company file.

    2. Click Open add-on folder and start MYOB.AccountRight.API.AddOnConnector.exe. Leave it running.

    3. Come back and press Test connection or Discover again.

  4. Pick your company file from the list. If there is only one, it is selected for you. Files are listed as name – version.

  5. Click Test connection, then Create.

If the window says the add-on was not found on this computer, an AccountRight update may have removed it. Reinstall the AccountRight desktop edition and open the window again.

Message

What to do

The AccountRight version installed on this computer cannot open this company file

Open the company file in AccountRight once so it is upgraded, press Discover again and pick the upgraded file.

MYOB rejected the company file username or password

Use the same sign-in you use in AccountRight.

Keep AccountRight and the add-on running. If the add-on stops — after a restart, for example — polling cannot reach MYOB and invoices wait. Start it again and the connector carries on.

4. Set the fiscalization options

Select the new integration. The Fiscalization card holds the settings that decide what gets fiscalized and when.

Setting

What it does

Trigger

On posted fiscalizes every posted invoice. On paid waits until the invoice is settled.

Poll every

How long to wait between checks, 10–3600 seconds. 60 seconds suits most sites.

Payment type

The payment type sent for these invoices.

Spare reference

Optional ERP field name used to carry an extra reference. Leave it blank unless support asks for it.

Training mode

Sends documents as training documents. Use it while you test.

Active

Starts polling this integration.

Click Save. Do not tick Active until your tax mapping is done — see the next step.

Sage 300 and "On paid": Sage 300 does not report payment state on an invoice batch, so a Sage 300 integration fiscalizes every posted invoice whatever this is set to. Leave it on On posted to avoid surprises.

Odoo Accounting picks up posted customer invoices only. Credit notes are not fiscalized.

MYOB AccountRight reads Item and Service sale invoices. On posted takes open and closed invoices; On paid takes closed (fully paid) invoices only. Credits are not fiscalized — handle refunds manually. When a payment has been recorded against the invoice in MYOB, the connector uses its payment method for the Payment type (cash, cheque, card brands and EFTPOS as card, direct deposit and bank transfer as wire transfer, anything else or a mix as other); otherwise it uses the default you set here. Amounts entered tax-exclusive are converted to tax-inclusive using the company file's tax codes, and a freight charge is sent as its own line.

The first poll after you switch an integration on looks back 24 hours. Invoices posted before that window are not picked up, so switch the integration on before, not after, the invoices you want fiscalized.

MYOB AccountRight is different: its first poll only notes where the company file stands, so only invoices created or changed after you switch the integration on are fiscalized — nothing older is picked up.

5. Map your tax codes

The SDC will not accept an invoice line without a fiscal tax label, so every tax code your invoices use has to be mapped once.

  1. Open the Tax mapping tab and choose the integration.

  2. Click Reload. The connector pulls the live tax codes from that ERP and shows their code, name and rate.

  3. Type the fiscal tax label — A, B, C and so on — beside each code you actually invoice with. These are the labels your SDC or Cloud POS account is set up with.

  4. Click Save.

Map every code you use. An invoice carrying an unmapped tax code is never sent for signing; it lands in Fiscalized invoices as failed, with a message naming the codes it could not translate. Add the mapping, then retry the invoice.

Where the tax codes come from: EXO returns its tax rate table, MYOB AccountRight returns the tax codes of the company file, Odoo returns its sales taxes, and Sage 300 derives them from recent invoice batches — so a brand-new Sage 300 company may return nothing until it has posted invoices.

Once the mapping is saved, go back to ERP integrations, tick Active and Save. Polling starts immediately.

6. Odoo Point of Sale (optional)

Skip this unless you run the Odoo Point of Sale cash register. It is independent of any ERP integration and has its own settings.

  1. Open the Odoo POS tab and turn the switch on.

  2. Copy the connector address shown in step 1 of that tab — http://<this-machine>:8890/api/v1/pos/fiscalize.

  3. In Odoo, open Point of Sale → Configuration → Settings and paste the address into FiscoBridge SDC URL.

  4. Tick Training mode while you test, so receipts are sent as training documents.

  5. Click Save.

The pill on that tab reads Listening once the endpoint is up. If it reads Not running, something else already holds the port — pick another one under Advanced and save again.

Changing the port: the installer opens 8890 only. If you move the endpoint to another port, add a Windows Firewall rule for it yourself, or the tills will not reach the connector.

Every POS order is signed the way you chose in step 2 — through the SDC or through Cloud POS — and only while the licence on this machine is valid. With Cloud POS, the till waits for the cloud's answer, so the connector's internet connection has to be up while you sell.

7. Activate the licence

Nothing is fiscalized until the machine is licensed. Follow Activating a connector, then check Fiscalized invoices to see the first results arrive.

Editing an integration later

Select it on the ERP integrations tab:

  • Edit reopens the connection details. Secret fields are deliberately shown blank — leave one blank to keep its stored value, or type a new value to replace it. Credentials are encrypted on disk.

  • Test connection re-checks the saved connection at any time.

  • Delete removes the integration.

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.