errorcountryPOLKSeF

KSEF-004:Currency code invalid

Fix: Use correct ISO 4217 currency code. Provide the required value in the free validator.

Currency must be a valid ISO 4217 code. Use PLN for domestic invoices.

Severity
Fatal
Rule set
KSeF
Country
POL
Fix type
INPUT REQUIRED

Engine Classification

Business data required · Explicit input workflow · No assumptions made

Required input: Currency Code

What is KSEF-004?

KSEF-004 is a fatal validation rule defined in the KSeF specification (POL national rules).

When this rule fires, the invoice is rejected by Peppol access points and never reaches the buyer.

Why This Error Matters

KSEF-004 is a hard failure — the invoice must be corrected and re-sent before it can reach the recipient.

Validator Behavior

  • ·Causes invoice rejection
  • ·Error returned: KSEF-004
  • ·Specification: KSeF

How to Fix It

.

.

.

Technical Reference

SpecKSeF

Code Example

<KodWaluty>PLN</KodWaluty>

Common Causes

  • ·Invalid currency code format
  • ·Using currency symbol instead of code
  • ·Typo in currency code

Seeing this in production? The API handles KSEF-004 automatically. See the fix response →

Frequently Asked Questions

Currency must be a valid ISO 4217 code. Use PLN for domestic invoices.

Use correct ISO 4217 currency code. Invoice Navigator detects this error and prompts for the required business data before applying a safe fix.

Yes, KSEF-004 is a critical error that will cause invoice rejection. It must be fixed before submission to ensure your invoice is accepted by the recipient's system.

KSEF-004 requires specific business data to resolve. Invoice Navigator detects the error and guides you through providing the needed information, then applies the fix with full audit documentation.

Related Content

Last updated: 3 March 2026

Share this guide:

Validate your invoice

Drop your XML here to check for KSEF-004

Fix KSEF-004 with guided input

Upload your invoice and we'll ask for the missing data, then apply a safe, auditable fix.