Skip to content

[Invoices]: Implement FatturaPaHandler XML generation (FatturaPA 1.2 — Italy) #783

Description

@nielsdrost7

Context

Sub-story of #767. FatturaPaHandler (FatturaPA 1.2 — Italy) currently throws RuntimeException('... not yet implemented ...') instead of generating real XML.

Recommended package

No clearly dominant package found. Candidates surveyed: robertogallea/php-fatturapa, s2software/fatturapa, fatturaelettronicaphp/fattura-elettronica, axiostudio/fattura-elettronica. None showed the same strength-of-signal (install counts, maintenance activity) as num-num/ubl-invoice or josemmo/facturae-php in this pass — figures need verifying before picking one.

Scope

  1. Research spike: properly compare the candidate packages (install counts, last release date, open issues, license) and pick one — don't default to the first result
  2. Implement FatturaPaHandler::generateXml() using the chosen package

Acceptance criteria

  • Research spike findings documented, package chosen with rationale
  • FatturaPaHandler::generateXml() returns real, well-formed FatturaPA 1.2 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 FatturaPA from the list (this includes the dedicated FatturaPaHandlerTest, currently asserting the not-yet-implemented RuntimeException)

Sequencing note

Needs its own research spike before implementation — no clear package winner yet identified. Recommend doing this last among the 8 sub-stories. 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