Download the PHP package djasoft/sunat-comprobantes without Composer

On this page you can find all versions of the php package djasoft/sunat-comprobantes. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package sunat-comprobantes

Comprobantes SUNAT

Dos piezas que todo el que factura electrónicamente en Perú acaba escribiendo: el cálculo de totales e IGV de un comprobante y el contenido del código QR de la representación impresa.

Sin dependencias de framework. Funciona igual en Laravel, Symfony, Slim o PHP a secas.

Por qué existe

La facturación electrónica peruana está bien resuelta en la parte difícil: Greenter genera el XML, lo firma y lo envía a SUNAT. Pero antes de llegar ahí hay dos cosas que cada proyecto reimplementa:

  1. Calcular los totales. Separar las bases imponibles por tipo de afectación, sumar el IGV y el ICBPER, aplicar el redondeo hacia abajo al décimo, y generar la leyenda del importe en letras. Son reglas de SUNAT, no de tu negocio.
  2. Armar el QR. Diez campos separados por |, en un orden exacto y con un | final que se olvida muy fácilmente.

Ninguna de las dos es complicada. Las dos son fáciles de equivocar, y el error se descubre tarde: cuando SUNAT rechaza el comprobante.

Este paquete sale de un ERP en producción y viene con 18 tests.

Cálculo de totales

Calculator trabaja con arrays planos y usa los mismos nombres de campo que Greenter, así que el resultado se le pasa directamente.

Tipos de afectación del catálogo 07, como constantes:

Constante Código Significado
Calculator::GRAVADO 10 Gravado con IGV
Calculator::EXONERADO 20 Exonerado
Calculator::INAFECTO 30 Inafecto
Calculator::EXPORTACION 40 Exportación

Cualquier otro código se trata como operación gratuita: su base va a mtoOperGratuitas y su IGV a mtoIGVGratuitas, sin sumar al importe a pagar.

Dos detalles que suelen costar un rechazo

Si tu IGV no es 18%, pásalo como último argumento de buildDetail. Y si facturas en dólares, new Calculator('DOLARES AMERICANOS') cambia la moneda de la leyenda.

Contenido del código QR

En una boleta a consumidor final omite los datos del cliente: por defecto quedan como 0 y -, que es lo que espera SUNAT.

Esta clase solo produce la cadena. Renderizarla es cosa tuya y de la librería que prefieras:

Alcance

Esto no envía nada a SUNAT ni genera XML: para eso está Greenter, y no tiene sentido reescribirlo. Aquí solo están las dos piezas de cálculo y formato que Greenter no cubre.

Requisitos

PHP 8.2+ y luecano/numero-a-letras para la leyenda del importe.

Tests

Licencia

MIT. Úsalo en lo que quieras, incluido software comercial.

Autor

Daniel Morán Vílchez — Djasoft · @DanielMoranV


All versions of sunat-comprobantes with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
luecano/numero-a-letras Version ^4.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package djasoft/sunat-comprobantes contains the following files

Loading the files please wait ...