eFakturuj for WooCommerce connects one WooCommerce store to one eFakturuj company using a short-lived, one-time pairing code. Pairing records and protects the normalized store URL so the same store cannot silently be attached to another company.
Normal synchronization is automatic and does not make checkout or an order edit wait for eFakturuj. The plugin captures an immutable canonical order snapshot in a durable local outbox, encrypts its payload with AES-256-GCM, and sends it in the background. The safe default creates invoices only when the customer requested one; the merchant can add the built-in checkout checkbox, use an existing checkout extension’s order-meta key, or deliberately enable every eligible order.
WooCommerce > eFakturuj invoices is the dedicated operational workspace. It provides:
The WooCommerce order editor also contains an HPOS- and legacy-compatible eFakturuj invoices card. It shows documents and recent synchronization status for that order, provides authenticated Open/PDF actions when available, and allows an authorized administrator to send the current order again.
The plugin captures new orders, persisted order edits, status changes, saved order items, completed payments, created refunds, completed order refunds, and later refund edits. Duplicate hooks are coalesced before one immutable snapshot is stored. Itemized partial refunds include product, shipping, fee, and per-tax-rate allocations so eFakturuj can create linked type 381 credit notes. An amount-only or unreconciled refund remains visible for review instead of inventing an accounting allocation.
Security details:
The isolated 1.0.0 acceptance run passed all 27 checks on WordPress 7.0.1 and WooCommerce 10.9.4.
wp action-scheduler run when the Action Scheduler WP-CLI command is available.Automatic delivery makes no more than five attempts for one immutable event UUID. Accepted events receive up to 12 signed status checks with bounded backoff.
The invoices workspace deliberately separates two recovery operations:
retries_event_id. Use it only after correcting source data or when a review/attention result requires a new event. Both rows remain correlated audit history.Neither operation lets a submitted request choose another order: the server-side handler resolves the order and event type from the protected outbox row. Both require manage_woocommerce and a row-specific nonce.
Use WooCommerce > eFakturuj settings > Disconnect to remove the local connection ID, event URL, encrypted signing secret, signature version, and scheduled connector actions. Existing eFakturuj invoices are not deleted. Local outbox history remains available until the plugin is deleted, but it cannot be delivered while disconnected.
Deactivation preserves connection data and outbox rows so normal operation can resume after reactivation. Deleting the plugin from the WordPress Plugins screen removes connection and invoice-policy options, worker-health timestamps, scheduled actions, and the complete encrypted outbox table. Backend accounting documents are never deleted by local cleanup.
Uninstall the WooCommerce application in eFakturuj when access must also be revoked at the backend; that clears the server-side signing secret and rejects later store events.
This plugin connects your store to eFakturuj, an e-invoicing service operated by
eFakturuj (IČO 57546495, Slovakia). The connection is created by you, in the plugin
settings, using a one-time pairing code issued by your eFakturuj account. No data
leaves your site before you pair it.
What is sent, and when:
Nothing is sent for orders that are not eligible under your invoice policy.
Service terms: https://efakturuj.sk/p/terms
Privacy policy: https://efakturuj.sk/p/privacy
Service documentation: https://docs.efakturuj.sk
eFakturuj is a paid service. You can evaluate the connector without a paid account
using the free sandbox at https://sandbox.efakturuj.sk/get-started
When connected, this plugin sends eligible invoice data to the configured eFakturuj API, including customer billing/shipping details, company and tax identifiers, email/phone, purchased items, discounts, totals, taxes, payment state, and refund information. Two of those values are free text rather than structured fields: the customer’s order note, written by the shopper at checkout, and the reason recorded for each refund. Both are transmitted exactly as entered, so treat them as potentially containing personal data and tell shoppers not to put anything sensitive in the order note.
Canonical payloads waiting for delivery are retained locally only in AES-256-GCM encrypted form. The invoices workspace and logs expose bounded non-content summaries: event/document identifiers, WooCommerce order identifiers/numbers, status, attempts, timestamps, correlation, document links, and sanitized public errors. They do not store or display the canonical customer/order JSON. Deleting the plugin drops the encrypted outbox and local options; normal database backups may retain deleted data according to the site’s backup policy.
Review the eFakturuj privacy policy (https://efakturuj.sk/p/privacy), document this processor/data transfer in the store privacy notice, limit administrator access to trusted users, and set an appropriate WordPress backup-retention policy.