-
-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
PEPPOLPEPPOL BIS Billing 3.0 validationPEPPOL BIS Billing 3.0 validation
Description
Summary
Implement country-specific validation rules for PEPPOL BIS Billing 3.0 (DK, IT, NL, NO, SE).
Background
PR #32 added foundational PEPPOL support with 84 auto-generated rules, but only implemented 5 core rules. The remaining 79 rules include important country-specific validations that need to be implemented.
Country-Specific Rules
Denmark (DK-R-*)
- DK-R-002: Legal entity requirement
- DK-R-003: ItemClassification UNSPSC version
- DK-R-004 through DK-R-016: Various Danish supplier requirements
Italy (IT-R-*)
- IT-R-001: Seller tax registration identifier format (11-16 chars)
- IT-R-002: Postal address line 1 required
- IT-R-003: City required
- IT-R-004: Post code required
Netherlands (NL-R-*)
- NL-R-001 through NL-R-009: Dutch supplier and credit note requirements
Norway (NO-R-*)
- NO-R-001: VAT number format validation
- NO-R-002: "Foretaksregisteret" requirement
Sweden (SE-R-*)
- SE-R-001 through SE-R-013: Swedish VAT number and organization number validations
Implementation
The rules are already defined in rules/peppol.go. Need to:
- Implement validation logic in
check_peppol.go - Detect seller/buyer country from postal address or VAT registration
- Apply country-specific rules conditionally
- Add comprehensive test coverage for each country
References
- PEPPOL schematron: https://github.com/OpenPEPPOL/peppol-bis-invoice-3/blob/master/rules/sch/PEPPOL-EN16931-CII.sch
- PEPPOL BIS Billing 3.0 spec: https://docs.peppol.eu/poacc/billing/3.0/bis/
Related
Metadata
Metadata
Assignees
Labels
PEPPOLPEPPOL BIS Billing 3.0 validationPEPPOL BIS Billing 3.0 validation