Skip to content

[Invoices]: Implement CiiHandler XML generation (UN/CEFACT CII) #777

Description

@nielsdrost7

Context

Sub-story of #767. CiiHandler (UN/CEFACT Cross Industry Invoice) currently throws RuntimeException('... not yet implemented ...') instead of generating real XML.

Recommended package

horstoeko/zugferd (MIT, actively maintained — v1.0.132 as of Aug 2026). Handles native CII syntax directly, which is the base format ZUGFeRD/Factur-X profile rules layer on top of.

Note: the package's own maintainers point new projects at horstoeko/invoicesuite as an eventual successor, but it's not yet mature enough (v0.0.32) to depend on here.

Scope

Implement CiiHandler::generateXml() using horstoeko/zugferd's CII document builder.

Acceptance criteria

  • CiiHandler::generateXml() returns real, well-formed CII XML
  • Output passes PeppolXmlValidator
  • Unit test asserts well-formedness and key fields, following the PeppolBisHandlerTest pattern
  • FormatHandlersTest's unimplemented-formats test is updated to drop CII from the list

Sequencing note

Shares horstoeko/zugferd with #778 and #779 (Factur-X and ZUGFeRD sub-stories) — recommend doing these three together or back-to-back to amortize the integration work. See #767 for full package-research context.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    refinedRefined with SMART plan / test suggestions

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions