FGSync for Oblio is an independent open-source integration between WooCommerce and the Oblio.eu invoicing service. It is not developed, endorsed, maintained, or supported by Oblio.eu; Oblio is a third-party service, and an active Oblio account is required. Documents Issue invoices, proformas, delive
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.5 and PHP 8.1.
SourceWordPress plugins · Oct 23, 2026
01 / Source details
Aboutthistool.
FGSync for Oblio is an independent open-source integration between WooCommerce and the Oblio.eu invoicing service. It is not developed, endorsed, maintained, or supported by Oblio.eu; Oblio is a third-party service, and an active Oblio account is required.
Documents
Issue invoices, proformas, delivery notes and credit notes (storno), automatically or manually from the order screen.
Proforma to invoice rule: a proforma is transformed into an invoice or deleted; a proforma is never issued after an invoice, nor for an order already paid online, since a proforma is a request for payment.
When an order already has a delivery note, its invoice is issued based on it in Oblio, so stock is taken out only once.
Automatic credit note on WooCommerce refunds (partial and full). Refunds made before the invoice is issued are taken off the invoice instead, and an order refunded in full before invoicing gets no invoice.
Experimental bridge to the WooCommerce Returns feature, off by default and available only when your WooCommerce version has that feature.
Customers find their invoices and credit notes in a “Facturi” section of their WooCommerce account.
Document options: series, document date (issue day or order day), work point, warehouse, unit of measure, due date, notes, “issued by” and delegate, document language and product type.
Per product and per variation: Oblio product type and units per package (decimals allowed, for example 2.5 m² per box). Virtual products (for example digital goods) can get their own default type, such as “Serviciu”.
Works with Oblio accounts without warehouses, for example shops selling only digital products: the stock options are switched off and invoices are issued without stock deduction.
Sale discounts are invoiced as the customer saw them at checkout, even if prices change later.
Optional: fill in company details from Oblio by CIF.
Each line is sent with the exact VAT category from your Oblio account, matched by rate (including rates like 25.5% or 5.5%), using the rate recorded on the order.
A “TVA” tab lists the WooCommerce rates your Oblio account has no category for, with the name to give each one in Oblio, so a missing rate is caught before an invoice fails.
Choose which 0% category is used for lines without VAT (SDD, SFDD, Scutita, Taxare inversa, etc.).
Optional one-click import of the standard VAT rates for all 27 EU countries into WooCommerce, refreshed with plugin updates.
Company and individual customers (CUI, CNP, registration number, bank, IBAN) from the free “Facturare – Persoana Fizica sau Juridica” plugin, on classic and block checkout.
Performance
Queued processing (Action Scheduler) so issuing never blocks checkout or status changes.
Automatic retries with backoff, plus a reconciliation job for missed invoices.
Stock synced in batches, across one or more warehouses (locations), matching the WooCommerce SKU with the Oblio product code.
Optional price update from Oblio during stock sync, keeping your sale prices.
Optional stock reservation for orders not yet invoiced, so the store doesn’t oversell.
Bulk actions (invoice/proforma/storno for multiple orders at once) are queued per order, not run one after another in the same admin request.
Settings and warehouse/series lists are read from a short-lived cache, refreshed on demand, instead of calling Oblio on every page load.
Collection and notifications
Automatic “mark as paid”, configurable per payment method, with exceptions.
Invoices issued the moment the order reaches a status, or on a schedule (batch), your choice, and optionally as soon as an online payment is confirmed.
Customer notifications two ways: a standalone email from the plugin, or a button linking to the invoice inside WooCommerce’s own order emails.
Orders screen
Oblio status column on the orders list, with an error badge and the reason when issuing failed.
Filter the orders list by Oblio document (none, proforma, invoice, delivery note, credit note, failed).
Issue, view or delete documents from the order screen; the delete button only shows when Oblio allows it (the last document in its series).
Status and security
The API key is stored encrypted (AES-256-GCM).
A “Stare” tab with today’s log (with live updates), the processing queue, update status, any plugin hooks overridden by other code, and a one-click diagnostics report for support that never includes the API key or personal data.
A connection dot in the admin toolbar, and suggested text for your site’s privacy policy.
Compatibility
Works with both High-Performance Order Storage (HPOS) and the classic order storage.
Compatible with WPML / WooCommerce Multilingual (invoice language and currency from the order).
WooCommerce Product Bundles: the components are invoiced and take the stock, and a fixed bundle price is split across them.
Logs through WooCommerce (WooCommerce, Status, Logs) and a dedicated status panel.
One-click import from the old “WooCommerce Oblio” plugin.
Extensibility
Filters and actions for cases the settings screen doesn’t cover: adjusting a stock quantity or price before it’s written, overriding a document’s currency or language per order, and changing the invoice email button’s behavior.
This plugin uses the Oblio.eu API. You need an Oblio account and an API secret.
Project page, with features and a comparison with the old plugin: https://rwkyyy.github.io/fgsync-oblio/ Source code and issue tracker: https://github.com/rwkyyy/fgsync-oblio Try it in your browser in WordPress Playground: https://playground.wordpress.net/?blueprint-url=https://rwkyyy.github.io/fgsync-oblio/blueprint.json
External services
This plugin connects to the Oblio.eu invoicing service (https://www.oblio.eu) through its API (https://www.oblio.eu/api) to create and manage your accounting documents. Sending data to Oblio is the core purpose of the plugin and happens only for the actions you enable.
When data is sent:
When a document is issued (invoice, proforma, delivery note, or credit note), automatically on the order status you choose or manually from the order screen.
When an order is marked as paid (“collection”), if you enable it.
When stock is synchronised from Oblio, on the schedule you set or on demand.
When you test the connection or import settings from the connection screen.
What is sent for a document: your company identifier (CIF), the customer’s billing details (name, company, address, tax/registration identifiers, email and phone when present), the order lines (product name, code/SKU, quantity, price, VAT), shipping and fees, totals, and the payment method. Authentication uses your Oblio account email and API secret. Every request names the plugin in its User-Agent header, together with the plugin, WordPress and WooCommerce versions and your site address, so Oblio can tell which requests come from this integration. No data is sent to any party other than Oblio.
Oblio service: https://www.oblio.eu Oblio Terms and Conditions: https://www.oblio.eu/terms Oblio confidentiality/privacy policy: it is part of the Terms and Conditions above (the “notă de confidențialitate”); the current version is published on https://www.oblio.eu
Please review those documents before use. Sending customer and order data to Oblio is subject to your agreement with Oblio and your own privacy obligations.
Upgrading from a pre-1.1.0 beta
If you installed an earlier oblio-fgwoo beta build directly (not through this wp.org listing), note before updating:
This release ships under a new plugin slug/folder ( fgsync-oblio ) and main file ( fgsync-oblio.php ). WordPress treats it as a different plugin, not an in-place update of the old folder.
Deactivate and delete the old oblio-fgwoo (or similarly named) plugin folder first, then install this one. Your settings, order metadata, product fields, and issued-document history are preserved: they are all stored under the oblio_fgwoo_ option/meta prefix, which this release deliberately did not rename.
Any Action Scheduler job (document issue, refund/storno, stock sync, reconciliation) still queued or in-flight at the exact moment of the swap may need to be re-triggered manually (e.g. via “Sync now” or by re-saving the order), since the old plugin’s runtime is gone when its folder is removed. Nothing already completed (issued invoices, stored settings) is lost.
Any custom code hooking the plugin’s filters/actions (e.g. oblio_fgwoo_email_button_issue ) keeps working unchanged, since those hook names were intentionally not renamed.
See it in action
Screenshots & previews.
Conectare: connect your Oblio account with its email and API secret, then load your company, series and warehouses with "Preia ultimele date".Documente: series for invoices, proformas and delivery notes, document date, work point and warehouse. On an account without warehouses, the stock options are switched off with an explanation.TVA: the WooCommerce VAT rates that have no category in your Oblio account, with the name to give each one, and the 0% category for lines without VAT.Încasare: mark invoices as paid in Oblio by payment method.Sincronizare: stock (and optionally price) sync from Oblio, warehouses, and stock reservation for orders not yet invoiced.Email: send the invoice to the customer in a separate email, or as a button in WooCommerce's own order email.Avansat: document language, Oblio product type (with a separate type for virtual products), notes, "issued by" and delegate.Stare: connection, today's documents, queue and stock sync status, the live activity log, update status, overridden hooks and the diagnostics report.
02 / Source details
Gettingstarted.
01Upload the plugin folder to /wp-content/plugins/ .
02Activate the plugin through the Plugins menu.
03Open the FGSync settings (top-level “FGSync” menu), enter your Oblio account email and API secret, then press “Preia ultimele date” to connect and load your company, series and warehouses.
03 / Source details
Frequently asked questions.
Is this plugin made or supported by Oblio?
No. FGSync for Oblio is an independent, community-built open-source integration. It is not developed, endorsed, maintained, or supported by Oblio.eu. Oblio is a third-party invoicing service accessed through its public API; an active Oblio account is required to use this plugin.
What support is available?
Support is community/best-effort, through the WordPress.org support forum or the plugin’s public issue tracker (https://github.com/rwkyyy/fgsync-oblio/issues). There is no guaranteed response time or SLA.
Is it compatible with HPOS?
Yes, with both HPOS and the classic order storage.
How are updates delivered?
Through WordPress.org, like any plugin. There is no custom updater.
How do I migrate from the old plugin?
The “Conectare” tab has an “Importă setările” button that copies the old plugin’s settings. Documents already issued are shown automatically.
When are invoices issued?
Three modes, under Documente. “Prin coadă” (the default) queues the invoice the moment the order enters one of the selected statuses; it’s issued within seconds, without ever slowing down that request. “Instant” issues it synchronously, in the same request that changed the order’s status (checkout, a manual status edit, a payment gateway callback), useful if you need the invoice to exist the instant the status changes, at the cost of adding a few seconds to that request; if the attempt fails for any reason, it automatically falls back to the queue, so nothing is lost. “Programat” issues invoices periodically at the interval you choose, useful when invoicing happens later, e.g. on delivery. Optionally, “Emite și la confirmarea plății” also issues the invoice as soon as an online payment (card, PayPal, etc.) is confirmed, even if the order hasn’t reached one of the selected statuses yet; it works in the queued and instant modes, like the old plugin’s automatic invoicing. In all three modes a reconciliation scan re-checks recent orders (the last 7 days by default, adjustable with a filter) and re-queues any invoice a missed hook or a brief Oblio outage skipped.
My order shows a red “!”. What does that mean?
The plugin tried to issue that order’s invoice and it failed; hover the badge on the orders list (or open the order) to see the stored reason. Recoverable failures are retried automatically through the reconciliation scan and Action Scheduler’s own backoff. If the reason points to something on the Oblio side (for example, insufficient stock in the linked gestiune), fix it there, then re-issue manually from the order screen.
Why can’t I delete an older invoice?
Oblio only allows deleting the last document issued in a series. If a newer invoice already exists in the same series, the delete button is hidden for the older one; issue a storno (credit note) instead to reverse it. Proformas are the exception: they can always be deleted, since Oblio treats them separately from the numbered invoice series.
What happens to a refund made before the invoice is issued?
It is taken off the invoice: refunded quantities and amounts are left out, and a refund by amount only shows as a discount line. That refund gets no separate credit note. An order refunded in full before invoicing gets no invoice. If the invoice is built on a delivery note or proforma issued before the refund, it keeps that document’s values and the refund gets a credit note as usual.
How are WooCommerce Product Bundles invoiced?
Under Avansat, “Produse pachet (Bundles)” controls this. The default, “AUTOMAT”, invoices the bundle’s individual components, not the bundle product itself, because the bundle product usually has no stock record of its own in Oblio, and deducting stock against it fails. If the bundle has its own price (a fixed-price or promotional bundle, with the components at 0), that price is split across the components, weighted by their regular prices, so the invoice total matches the order and stock still comes off the real products. Partial refunds of such a bundle are credited on the same components, in the same proportions. If your store doesn’t deduct stock through Oblio, “INCLUDE linia pachetului” is worth trying instead: it shows the bundle as a single line with its own name and price, which often reads more clearly on the invoice.
Which VAT categories do I need in Oblio?
One per VAT rate your shop uses, under Oblio → Setări → Cote TVA. The plugin matches them by percentage, not by country or name, and the TVA tab lists any rate that has no category yet, with the recommended name (the rate itself, for example “25.5”). After adding one, press “Preia ultimele date” on the Conectare tab.
What happens when a VAT rate changes?
Oblio does not allow editing a VAT category once an invoice uses it, so add a new category for the new rate (for example “21” next to “19”) and keep the old one. Update the rate in WooCommerce → Setări → Taxe, by hand or with the EU import button. New orders then use the new category; invoices already issued keep their original rate, and documents for orders placed before the change still use the old category. Which rate applies to an order placed before and invoiced after a change is a question for your accountant: the plugin uses the rate recorded on the order.
Does the plugin decide which VAT rate applies?
No. WooCommerce calculates the VAT on the order (by your tax settings and any VAT exemption plugin), and FGSync sends that rate to Oblio unchanged. Rules such as OSS, reverse charge for EU companies, or exports are configured in WooCommerce and agreed with your accountant. If taxes are turned off in WooCommerce, lines are sent without a VAT rate and Oblio applies your account’s own settings (for example, not a VAT payer); the TVA tab then shows only the OSS and customer settings.
How are sales to EU companies (reverse charge) handled?
FGSync does not check VAT numbers in VIES. Use a checkout plugin that validates the customer’s EU VAT number in VIES and removes the VAT from the order; FGSync then sends those lines at 0% with the category chosen in the TVA tab (for example “Taxare inversa”). Keeping proof of the VIES check for your records is up to that plugin and your accountant.
What does “Emite în EUR pentru clienții din afara României” do?
Under TVA, when enabled, documents for a billing address outside Romania (in the EU or elsewhere) are issued in EUR regardless of the order’s currency, with Oblio showing the RON equivalent alongside it. It changes only the currency, never the VAT: the VAT still comes from WooCommerce. It’s off by default; whether EUR invoices suit your store is a question for your accountant.
Why does my WooCommerce stock drop before an order is invoiced?
If “Rezervă stoc pentru comenzi nefacturate” is enabled (Sincronizare tab), the stock WooCommerce displays is reduced for pending/processing orders that haven’t been invoiced with stock deduction yet, so the store doesn’t oversell while waiting. The actual deduction inside Oblio only happens once an invoice is issued with stock deduction on; this setting only affects what WooCommerce shows as available in the meantime.
What’s the status dot in the admin toolbar?
A shortcut to the FGSync “Stare” tab, with a small colored dot: green means everything’s normal, yellow means the processing queue has a large backlog, and red means the last attempt to reach Oblio failed (it clears as soon as a later call succeeds). It’s on by default; turn it off from a checkbox on that tab.
How do customers get the invoice by email?
Under Email, pick a mode. “Email separat (la emitere)” sends a separate message from the plugin when the document is issued, using your subject/message templates. “Nativ în mail-ul WooCommerce” instead adds a button linking to the Oblio invoice inside WooCommerce’s own order emails, for the order statuses you select (for example, the Completed order email). In that mode, if the invoice has not been issued yet when that email is sent, the plugin tries to issue it at that moment, even when automatic invoicing is off, so the button usually links to a real invoice. If Oblio’s rate limit is busy or that attempt fails, the invoice is queued instead and that particular email goes out without the button; the invoice itself still gets issued shortly after. Use the oblio_fgwoo_email_button_issue filter to disable the inline attempt if you only want a button when an invoice already exists.
Can I customize FGSync’s behavior for my store?
Yes. A few examples: oblio_fgwoo_stock_quantity and oblio_fgwoo_stock_price adjust a value right before it’s written during stock sync, oblio_fgwoo_document_currency and oblio_fgwoo_document_language override those per order, and oblio_fgwoo_email_button_issue (see above) controls the email button’s inline-issue behavior. See the plugin’s GitHub repository (https://github.com/rwkyyy/fgsync-oblio) for the current list.
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati