Skip to main content

Suppliers

Common reasons for registration failures:
  • Certificate and private key mismatch: Ensure you uploaded both files from the same certificate generation
  • Incorrect password: Verify the password matches what you set during certificate generation
  • Future start date: Certificate start date must be today or in the past
  • Wrong portal environment: Demo certificates won’t work with production, and vice versa
  • File encoding issues: For API uploads, ensure files are properly base64-encoded
  • Expired certificate: Check that the certificate is still valid
  • Invalid NIP: Verify the Polish Tax ID is correct and has access to KSeF
Check the workflow error logs in the Invopop Console for detailed error messages that can help diagnose the specific issue.
For sandbox testing:
  • Test mode: Generate fake NIPs at http://generatory.it/. These work immediately with self-signed certificates.
  • Demo mode: You need a real NIP with access to the KSeF Demo Portal.
For special cases: If you need demo credentials but don’t have Polish presence, contact the support team. We can facilitate test NIPs and tokens for our clients.

Sending invoices

Currently supported invoice types:
  • Standard Invoices (FAT): Regular B2B invoices with FA(3) schema
  • Credit Notes (KOR): Invoice corrections and adjustments
All invoices must include the pl-favat-v3 addon in GOBL to ensure FA(3) schema compliance.
Additional invoice types can be supported based on customer requirements. Contact support if you need specific invoice types.
International (cross-border) invoices are handled just like domestic invoices in KSeF:
  • The invoice is created in GOBL with the foreign recipient’s details
  • It’s converted to FA(3) XML format and submitted to KSeF
  • KSeF validates and clears the invoice, assigning a unique KSeF ID
  • The invoice is registered in the KSeF system
However, since foreign recipients cannot access KSeF, you must deliver the invoice through other channels (email, EDI, etc.). Include the KSeF QR code in the delivery for verification purposes.
No. B2C invoices in KSeF are optional. The mandatory requirement applies only to B2B transactions.
Yes. The structured “Zalacznik” (attachment) is allowed for tax-relevant data on quantities and unit prices. This feature is primarily aimed at technical transactions in the energy sector, but any company can apply to use attachments.Requirements:
  • Each attachment is limited to 3 MB
  • Attachments must contain only tax-related data
  • Do not include non-tax materials (contracts, manuals, advertising)

Receiving invoices

Invopop automatically imports received invoices through a polling service:
  1. Configure polling interval during party registration (hourly, daily, weekly, or monthly)
  2. Set up the sync workflow to query KSeF for new invoices
  3. Configure the import workflow to convert FA(3) XML to GOBL format
  4. Link the workflows in the Poland app configuration
The system automatically checks KSeF at your chosen interval and imports any new invoices to your configured folder.For manual import, use the API to trigger import jobs with specific KSeF numbers or date ranges. See the Import Received Invoices section in the guide.
Yes. You can manually trigger a sync workflow to import invoices from a specific date range using the Create a Job endpoint.Pass the from and to date parameters to sync all invoices received within that period:
{
  "workflow_id": "YOUR_SYNC_WORKFLOW_ID",
  "entry_id": "YOUR_PARTY_ENTRY_ID",
  "args": {
    "from": "2026-01-01T00:00:00Z",
    "to": "2026-01-31T23:59:59Z"
  }
}
This is useful for backfilling invoices after a polling outage or importing historical data before enabling automatic polling.
Check these indicators:
  1. Polling configuration: Verify the polling interval is set in your party registration workflow configuration
  2. App configuration: Confirm the Poland app has your sync workflow configured
  3. Recent imports: Check the “Invoices · Expenses” folder for newly imported invoices
  4. Job logs: Review job logs in the Console for sync and import workflow executions
  5. Error notifications: Set up email or Slack notifications in your workflow error handling to alert you of failures
Test the import by manually triggering the sync workflow with a date range that includes known received invoices.

General

Test mode (sandbox only): Uses self-signed certificates generated automatically by Invopop. Perfect for quick testing without accessing the KSeF portal. Invoices are not sent to real KSeF servers.Demo mode (sandbox only): Connects to the official KSeF Demo Portal. Requires manual certificate generation, simulating the full production flow in a safe test environment.Production mode (live workspace): Connects to the live KSeF Portal. Requires valid company credentials and certificates. All invoices are submitted to the official KSeF system.
Use test mode for initial integration testing, then switch to demo mode when you’re ready to simulate the real certificate flow before going live.
Official KSeF applications:For testing:

Participate in our community

Ask and answer questions about Poland’s regulation →