lycet
lycet copied to clipboard
API REST de Facturación Electrónica Sunat utilizando Greenter.
Lycet - Greenter
Lycet es un API REST basado en greenter y Symfony Framework, UBL 2.1 es soportado.
Objetivo: Ofrecer una interfaz a greenter desde otros lenguajes de programación.
LIVE (Pruebas)
:rocket: | |
---|---|
URL | https://greenter-lycet.herokuapp.com/ |
API TOKEN | greenter |
Requerimientos
- Php 7.2 o superior
- Php Extensions habilitadas (soap, xml, openssl, zlib)
- WkhtmltoPdf executable (PDF report)
- Pem Certificate - convert pfx to pem
Pasos
Instalar Lycet
git clone https://github.com/giansalex/lycet
cd lycet
composer install -o
Configuraciones
En el archivo .env
ubicado en la raíz del proyecto, podrá cambiar estas configuraciones.
###> greenter/greenter ###
WKHTMLTOPDF_PATH=full/path/wkhtmltopdf.exe
CLIENT_TOKEN=123456
SOL_USER=20000000001MODDATOS
SOL_PASS=moddatos
FE_URL=https://e-beta.sunat.gob.pe/ol-ti-itcpfegem-beta/billService
RE_URL=https://e-beta.sunat.gob.pe/ol-ti-itemision-otroscpe-gem-beta/billService
GUIA_URL=https://e-beta.sunat.gob.pe/ol-ti-itemision-guia-gem-beta/billService
###< greenter/greenter ###
Tener en cuenta que
SOL_USER
es la concatenación del RUC + Usuario SOL
Archivos Requeridos
Se necesita almacenar el certificado y logo en la carpeta /data
, los archivos deben tener nombres específicos que se indican
a continuación.
/data
├── cert.pem
├── logo.png
├── empresas.json (opcional para multiples empresas)
También puede usar lycet-ui-config como interfaz de usuario, siendo mas útil
esta opción cuando emplea contenedores.
Para mas detalles del contenido de empresas.json
puedes revisarlo aquí.
Ejecutar
Usando Php Built-in Web Server.
php -S 0.0.0.0:8000 -t public
Ir a http://localhost:8000/
Docker
Deploy on Docker.
git clone https://github.com/giansalex/lycet
cd lycet
docker build -t lycet .
docker run -d -p 8000:8000 --name lycet_app lycet
Abrir el navegador, y dirígete a http://localhost:8000/
Docs
Puedes visitar greenter en postman que contiene ejemplos del envío de algunos comprobantes.
Ver swagger documentation, puedes crear un cliente en swagger editor, para tu lenguaje de preferencia.