Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Facturax Contracts Laravel Package

carloschininin/facturax-contracts

DTOs versionados (Api\V1\Dto) para contratos de la API Facturax. Permite construir y validar localmente payloads JSON antes de enviarlos o persistirlos. Incluye bundle Symfony opcional con servicios de validación y normalización.

View on GitHub
Deep Wiki
Context7

carloschininin/facturax-contracts

Contratos DTO versionados para la API de Facturax, con Bundle Symfony opcional para registrar servicios de validación y normalización.

Objetivo

Este package permite que:

  • Facturax valide localmente los payloads antes de persistirlos y mapearlos a Greenter.
  • Los sistemas cliente construyan y validen el JSON antes de invocar la API.

El contrato público está desacoplado de Greenter\Model\*, pero conserva la semántica necesaria para mapearse internamente a Greenter.

Requisitos

  • PHP 8.5+
  • Symfony 8.x

Instalación

composer require carloschininin/facturax-contracts

Bundle Symfony opcional

Si el proyecto consumidor usa Symfony, puede registrar el bundle:

<?php

return [
    CarlosChininin\FacturaxContracts\CarlosChinininFacturaxContractsBundle::class => ['all' => true],
];

Servicios incluidos:

  • CarlosChininin\FacturaxContracts\Service\ContractValidator
  • CarlosChininin\FacturaxContracts\Service\ContractNormalizer

Familias de contratos actuales

Venta

  • Api\V1\Dto\Comprobante\ComprobanteRequestDto
  • Api\V1\Dto\Nota\NotaRequestDto

Resúmenes y anulaciones

  • Api\V1\Dto\Resumen\ResumenDiarioRequestDto
  • Api\V1\Dto\Baja\ComunicacionBajaRequestDto
  • Api\V1\Dto\Reversion\ReversionRequestDto

Logística

  • Api\V1\Dto\Guia\GuiaRemisionRequestDto

Retención / percepción

  • Api\V1\Dto\Percepcion\PercepcionRequestDto
  • Api\V1\Dto\Retencion\RetencionRequestDto

Objetos compartidos

  • receptor / dirección
  • totales
  • forma de pago / cuotas
  • cargos / descuentos
  • leyendas
  • anticipos
  • detracción
  • percepción de venta
  • pagos / tipo de cambio
  • atributos de detalle

Ejemplos JSON

Ver docs/examples/v1/:

  • comprobante-factura.json
  • nota-credito.json
  • resumen-diario.json
  • comunicacion-baja.json
  • guia-remision.json
  • percepcion.json
  • retencion.json
  • reversion.json

Testing

composer install
vendor/bin/phpunit

Notas

  • Los DTOs están versionados por namespace en Api\V1\Dto\....
  • El emisor autenticado, credenciales SOL, certificados y endpoints SUNAT/OSE no forman parte del contrato público.
  • El package cubre las familias principales usadas en thegreenter/demo/examples para entrada de documentos.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
besmartand-pro/php-quality-config
sentix/ai-chatbot
terminal42/code-quality-tools
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity