Invoicing Integration for iFirma and WooCommerce

Plugin Banner

Invoicing Integration for iFirma and WooCommerce

by devikit

Download
Description

Invoicing Integration for iFirma and WooCommerce connects your WooCommerce store with the iFirma accounting system.

Generate invoices from the order screen, download PDFs, and let customers download documents from My Account. The plugin supports WooCommerce Blocks checkout and HPOS.

Key Features (FREE)

  • Manual Invoice Generation – Create invoices directly from WooCommerce order edit screen
  • Customer Synchronization – Sync customer data with iFirma contractors
  • NIP Field Support – Add NIP number field to checkout (compatible with nip-field-woocommerce plugin)
  • WooCommerce Blocks Support – Compatibility with Gutenberg checkout blocks
  • Advanced VAT Mapping – Map WooCommerce tax classes to iFirma VAT codes/rates (23%, 8%, 5%, zw, 0%)
  • Lump Sum (Ryczałt) Support – Add lump sum tax rate (ryczałt) to invoice positions (global default + per product/variation)
  • Invoice Download – Download PDFs directly from WordPress admin
  • Customer Download – Allow customers to download invoices from My Account View Order
  • Detailed Logging – Track API communications for debugging
  • HPOS Compatible – Full support for WooCommerce High-Performance Order Storage

PRO Features

  • Automatic Invoice Generation – Create invoices automatically on order status change
  • Automatic Proforma Invoices – Issue proformas automatically for selected statuses
  • Rachunki Support – Generate non-VAT documents (rachunki) when applicable
  • Email with PDF Attachments – Send documents to customers as PDF attachments
  • Bulk Operations – Generate documents and download PDFs for multiple orders with progress tracking
  • GTU / PKWiU / Units – Product-level fields + global defaults in settings
  • Global Invoice Notes – Define global invoice notes in settings (supports placeholders)
  • Priority Support – Direct access to our support team
  • Automatic Updates – Get new features and fixes automatically

Get PRO Version

Requirements

  • WordPress 5.8 or higher
  • WooCommerce 5.0 or higher
  • PHP 7.4 or higher
  • Active iFirma account with API access

External services

This plugin connects to two third-party/external services: iFirma API (for invoicing) and NBP API (for exchange rates).

What is iFirma API?

iFirma is a Polish online accounting system that provides invoicing and accounting services for businesses. This plugin uses their official API to:
* Create and manage customers (contractors) in your iFirma account.
* Generate invoices (FREE).
* Generate proformas and rachunki (PRO).
* Download document PDFs.

What data is sent and when?

The plugin sends the following data to iFirma API (https://api.ifirma.pl/) in these situations:

When you click “Create Invoice” (or when automation triggers document generation in PRO version):
* Customer billing information: first name, last name, company name, VAT number (NIP), email, phone number, billing address (street, city, postal code, country).
* Order information: order items (product names, quantities, prices, VAT rates), shipping details, payment method, order date, order total.

When the plugin connects to iFirma API (on settings page load or when needed):
* Your API credentials entered in the plugin settings (for authentication).
* Requests to retrieve data required for issuing documents (e.g. templates/series/settings where applicable).

No data is sent automatically without your action in FREE version. The plugin communicates with iFirma API when:
* You manually create an invoice from the order screen.
* You open the plugin settings page (to test the connection and load configuration).
* You enable automatic document generation in PRO version (if installed).

Service provider information

  • Service name: iFirma API
  • Service URL: https://www.ifirma.pl/
  • API documentation: https://api.ifirma.pl/
  • Terms of Service: https://pomoc.ifirma.pl/pomoc-kategoria/oferta-serwisu-ifirma/regulaminy/
  • Privacy Policy: https://www.ifirma.pl/rodo/polityka-prywatnosci-ifirma-pl/

What is NBP API?

NBP (Narodowy Bank Polski) API is the Polish National Bank’s public API that provides official exchange rates for foreign currencies. This plugin uses it to obtain exchange rates when generating invoices in foreign currencies (e.g. EUR, USD) or when issuing WDT/OSS documents with non-PLN amounts. The rate is needed to convert amounts to PLN for iFirma according to Polish accounting rules.

What data is sent to NBP and when?

When you create an invoice in a foreign currency (or when automation triggers it in PRO):
* The plugin sends a GET request to NBP API with the currency code (e.g. EUR, USD) and the invoice/order date in the URL. No personal data, customer data, or order details are sent.
* Example URL: https://api.nbp.pl/api/exchangerates/rates/A/EUR/2024-01-15/?format=json
* The response (exchange rate) is cached for 24 hours to reduce requests.

No data is sent to NBP without creating a document that requires a foreign currency rate. The request happens only when an invoice (or proforma/rachunek in PRO) is being generated and the order currency is not PLN.

NBP service provider information

  • Service name: NBP API (Narodowy Bank Polski)
  • Service URL: https://api.nbp.pl/
  • API documentation: https://api.nbp.pl/
  • Privacy Policy: https://nbp.pl/o-nbp/kontakt/regulaminy/

By using this plugin, you acknowledge that customer and order data will be transmitted to iFirma for invoice generation purposes, and that currency codes and dates may be sent to NBP API to obtain exchange rates. You are responsible for ensuring compliance with applicable data protection laws (including GDPR) and informing your customers about this data processing.

  1. Upload the plugin files to /wp-content/plugins/invoicing-integration-for-ifirma-and-woocommerce/
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Go to WooCommerce iFirma
  4. Enter your iFirma API keys and test the connection
  5. Configure VAT mapping and invoice settings
Where do I find my iFirma API keys?

Log in to your iFirma account and generate/copy the keys in: Configuration Extensions and integrations API.

Does this work with WooCommerce Blocks?

Yes, the plugin is compatible with both classic checkout and WooCommerce Blocks checkout.

Can customers download their invoices?

Yes, customers can download invoices from the My Account View Order page after an invoice has been created.

Is this compatible with NIP Field WooCommerce plugin?

Yes. The plugin detects popular NIP field plugin and avoids duplicating the field.

Jest ok

By dusterbaster on March 11, 2026

Ok

1.0.4

  • Fix: save_admin_order_nip – handle WP_Post passed by woocommerce_process_shop_order_meta in some WooCommerce versions

1.0.3

  • Plugin title: Invoicing Integration for iFirma and WooCommerce

1.0.2

  • Editable NIP field in order meta (admin order edit screen)

1.0.1

  • 5-minute delay for automatic invoice email (KSeF processing)
  • Order column: total mismatch indicator (order vs document sum) with tooltip
  • Compiled translations (pl_PL.mo)

1.0.0

  • Initial release
  • Manual invoice generation
  • Customer synchronization
  • Advanced VAT mapping
  • Customer invoice download
  • NIP field support with compatibility
  • HPOS compatibility
  • WooCommerce Blocks checkout support
Back to top