| 开发者 | simmotorlp |
|---|---|
| 更新时间 | 2026年9月26日 18:00 |
| PHP版本: | 8.1 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
FakturFlow\Vendor\), so they never clash with the same libraries bundled by other plugins:
Yes. It talks directly to the official KSeF API 2.0 of the Ministry of Finance — no intermediary and no per-invoice fees. You generate, validate and submit FA(3) invoices from the WooCommerce order screen.
By default only orders with a buyer NIP (tax ID) go to KSeF. Under WooCommerce → KSeF Invoices → Consumer invoices you can also issue KSeF invoices to consumers: on request (the buyer ticks "I want an invoice" at checkout) or for every order. A consumer invoice then goes to KSeF without a tax ID, and the buyer receives the PDF with its verification code.
Once KSeF accepts the invoice, the PDF is attached to the "Completed order" and "Order details" emails, and the email contains a download link (valid for 30 days, also for guest orders). Logged-in customers can download it any time from My Account. The PDF is generated on your server from the invoice exactly as KSeF holds it, with the KOD I verification code. If the invoice was accepted after the order email went out, the order gets a note — resend it with "Send order details to customer".
Yes. Tick "Split payment (annex 15)" on products listed in annex 15 to the VAT Act. A B2B invoice above 15 000 zł that includes such a product is marked "mechanizm podzielonej płatności" and carries your bank account (set it under Payments).
Orders in PLN from buyers in Poland — with a NIP, or consumers when you turn consumer invoices on — issued by a store based in Poland. Orders in other currencies and orders from buyers outside Poland are refused with a clear message on the order screen (nothing is numbered or sent) — foreign B2B invoices (EU VAT ID, reverse charge, WDT/export) and other currencies are planned.
Yes. The plugin is fully compatible with High-Performance Order Storage (custom order tables) and with the Checkout block — the NIP field is registered through the Additional Checkout Fields API and behaves identically in both checkout variants.
Log into the KSeF web application (https://ksef.mf.gov.pl/) with your Trusted Profile (Profil Zaufany) or qualified certificate, go to permissions management, and generate a token with InvoiceWrite and InvoiceRead permissions. Paste it into the plugin settings (WooCommerce → KSeF Invoices) — it is stored encrypted.
No. Invoice data is sent only to the official Ministry of Finance API (test, demo or production environment, as chosen in your settings). The one exception is the verification link encoded in the KOD I QR code itself — when scanned it points to the Ministry of Finance's public invoice-verification lookup, per the official verification-code specification. See the "External services" section below for the exact endpoints.
No. Generated invoice and UPO XML files (under wp-content/uploads/ksef-invoices/) are legal/tax records and are not deleted on uninstall — only the plugin's own settings (environment, seller data, token) are removed. If you also want the stored files gone, remove them manually after archiving/exporting them.
KSEFI_Invoice_Service::eligibility(), ksefi_payment_form_map, ksefi_pdf_locale and ksefi_pdf_template filters.ksefi_invoice_rejected action, fired when a KSeF status check reports the invoice as rejected.fakturflow-ksef.fakturflow-ksef-and-woocommerce). Upgraded chillerlan/php-qrcode to 6.0.1 and hardened the KOD I QR output with wp_kses().