Ksefshop Invoices For WooCommerce Wordpress Plugin - Rating, Reviews, Demo & Download
Plugin Description
From 2026 VAT invoices to Polish companies have to be issued in KSeF (Krajowy System e-Faktur), the National e-Invoice System of the Polish Ministry of Finance. Ksefshop Invoices for WooCommerce connects your shop to the Ksefshop invoicing service (ksefshop.pl), which builds the structured FA(3) invoice, sends it to KSeF with your own KSeF certificate or token and returns the KSeF number and a PDF.
Not affiliated with the Polish Ministry of Finance or WooCommerce/Automattic.
What the plugin does
- Adds an “I want a VAT invoice” checkbox and a NIP field to checkout, with NIP checksum validation. Works with the classic checkout and the block checkout (WooCommerce 8.9+). Can also read a NIP collected by another plugin (enter its order meta key).
- When an order with a NIP is paid, sends it to the service in the background (Action Scheduler, bundled with WooCommerce). The service issues the FA(3) invoice in KSeF and returns the invoice number, KSeF number and PDF.
- Turns refunds into correction invoices (faktura korygujaca) that refer to the original KSeF number.
- Shows status, invoice number, KSeF number and a PDF link (with the KSeF verification QR code) in a box on the order screen, with “Refresh status” and “Send again” buttons.
- Shows the PDF link to the buyer on their order page.
- Retries automatically when your server or the service is briefly unavailable. A retry never creates a second invoice (idempotency keys).
- Compatible with HPOS (custom order tables). Works on small shared hosting: the KSeF work (FA(3) XML, KSeF sessions, encryption, status polling, PDF rendering) runs on the service, not on your server.
Orders without a NIP are never sent: B2C receipts stay in your shop.
Free and paid plans
The plugin is free (GPLv2 or later) and every feature of the plugin works for every user; nothing in the plugin is locked, time-limited or unlocked by a licence key. The plugin has no upgrade prompts.
Invoices are issued by the Ksefshop service, which needs an account on the service:
- Free plan: 5 invoices per month, no payment details needed.
- Paid plans: 29, 59 or 99 PLN per month (net) for more invoices per month. Paid plans are bought and billed on the service website (payments handled by Paddle), never inside WordPress.
The monthly limit is applied by the service, not by the plugin: over the limit, orders wait and keep their place in the invoice numbering until the next month or a plan change. Current plans and prices: https://ksefshop.pl/#cennik
Test mode
A test API key (sk_test_…) sends invoices to the official KSeF test environment only. They have no legal effect, so you can try the whole flow before going live with a live key (sk_live_…).
External services
This plugin is a client of the Ksefshop invoicing service operated by LLC Lytvynov Production (https://ksefshop.pl). Ksefshop is an independent service, not affiliated with the Polish Ministry of Finance. The service is required: it is what issues the invoices in KSeF. The plugin cannot issue invoices without it.
The plugin connects to the service only after an administrator has entered the API URL and the secret API key on the WooCommerce > Ksefshop Invoices settings page. Nothing is sent before that. Requests go to the API URL you entered (normally https://app.ksefshop.pl).
What is sent and when:
- When an order that has a buyer NIP is paid (payment complete, or the order is set to Processing or Completed), and when you press “Send again” on the order: order number and dates, status, currency, buyer NIP and company name, billing name, address and email, ordered items (name, SKU, quantity, prices, taxes), shipping and fee lines, tax rates and the payment method name. Orders without a NIP are not sent.
- When such an order is refunded: the refund (date, amount, reason, refunded items, shipping and fees) together with the order data above.
- When the invoice status is checked (automatically after sending, or with “Refresh status”): the invoice ID only.
- When you press “Test connection”: no order data.
Every request goes to the API URL you entered (https://app.ksefshop.pl, over HTTPS) with your secret API key (Authorization: Bearer) and a User-Agent header with the plugin version and your site address. The buyer’s IP address, browser user agent, phone number and customer account ID are not sent.
The service then sends the invoice to KSeF, the system of the Polish Ministry of Finance (https://ksef.podatki.gov.pl), using your KSeF certificate or token, stores the invoice for the period required by tax law and may email the PDF to the buyer. The PDF link shown to you and to the buyer points to the service.
- Terms of service: https://ksefshop.pl/regulamin-sprzedaz/ (English: https://ksefshop.pl/en/terms-direct/)
- Privacy policy: https://ksefshop.pl/polityka-prywatnosci/ (English: https://ksefshop.pl/en/privacy/)
- Refund policy: https://ksefshop.pl/zwroty/ (English: https://ksefshop.pl/en/refunds/)
- Contact: kontakt@ksefshop.pl
The plugin adds a suggested paragraph about this data transfer to Settings > Privacy (privacy policy guide).
Screenshots
No screenshots provided

