giansalex / sufel Goto Github PK
View Code? Open in Web Editor NEWSUFEL - Libreria para llevar acabo la Consulta de comprobantes electrónicos exigido por Sunat
SUFEL - Libreria para llevar acabo la Consulta de comprobantes electrónicos exigido por Sunat
Al convertir sufel en package se podrá integrar en proyectos ya construidos, así como integrar en los distintos frameworks, también permitirá que se maneje una lógica personalizada del acceso a la información de los comprobantes electrónicos y lectura de archivos (xml, pdf).
Example
podrias darme un ejemplo de como consumir sufel
Giansalex, estoy accediendo a sufel mediante CURL y consigo respuesta pero esta no se muestra en formato xml y no sale directo para descarga.
Mi código
<?php $authorization = "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzY29wZSI6WyJkb2N1bWVudCJdLCJkb2MiOiIyIiwiZXhwIjoxNTcyMDQ4MDc5fQ.zDEeTEDYK8dXC8nUCVfzVUENlIEMVh90Ab7CtendSRo"; $cliente = curl_init(); curl_setopt($cliente, CURLOPT_URL, "http://mipagina.com/sufel/public/api/document/resource/xml"); curl_setopt($cliente, CURLOPT_HTTPHEADER, array('text/xml; charset=utf-8',$authorization)); curl_setopt($cliente, CURLOPT_RETURNTRANSFER, 1); $respuesta = curl_exec($cliente); curl_close($cliente); $respuesta = explode("\n\r\n", $respuesta); $headers = $respuesta[0]; echo $headers; ?>
Este me devuelve esto:
Que le falta a mi código para que dé frente me descargue el xml en formato correcto?
Estoy tratando de adaptar sufel para UBL2.1.
Pero cuando trato de traer los tags obtengo esto:
->setEmisor($this->getFirst('cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID))
Obtengo un error 500
->setEmisor($this->getFirst('cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID schemeID="6"))
Obtengo vacio
Sin embargo para los campos de razón social los trae correctamente ... ¿Cual será el error?
Buenas Giansalex, una consulta a que parametro debo llamar para saber cuando el documento ya fue enviado anteriormente, por que durante mis pruebas si el documento existe o no, me devuelve en los dos casos codigo 200 pero como puedo diferenciar cuando se guardo uno nuevo o el documento ya existe.
Saludos
Gracias
Prevenir codigo de error cuando un comprobante ya se encuentra almacenado.
Giansalex, disculpa tengo la duda de como especificar la carpeta local donde se encuentran el XML y el PDF.
actualmente subo los archivos manualmente a la carpeta public y desde ahi los llamo para que se integren a la API-SUFEL con este codigo:
`
subir archivos
Saludos y muchas gracias
Giansalex, por donde podría comenzar si quiero que cuando se suba un documento también se envíe el xml y pdf al correo del cliente.
Saludos
Gracias por la ayuda y paciencia
Actualmente tengo corriendo en un hosting SUFEL consumido por sufel-angular y le envío los archivos con un ejecutable que hice en Java y todo funciona correctamente solo tengo pendiente lo de enviar los archivos al correo del cliente una vez que se guardo en SUFEL.
amigo, esto tambien es aceptado en vez de enviar email no ? o son diferentes consulta y envio de representacion impresa
Hola Giansalex, Desarrolle una aplicacion en JAVA para el envio de documentos a sufel.
todo funciona bien pero al enviar una nota de credito tambien envio el PATCH para la anulacion del documento que tiene asociado la Nota de Credito. al principio al enviar el PATCH me devolvia error.
java.net.ProtocolException: Invalid HTTP method: PATCH
cambie esta linea
con.setRequestMethod("PATCH");
por estas otras 2
con.setRequestProperty("X-HTTP-Method-Override", "PATCH");
con.setRequestMethod("POST");
y ya me devuelve estado 200 pero no me anula el documento en la base de datos.
me podrias decir si es un tema de que no se puede usar de la manera que lo estoy haciendo o algo falta en sufel para que acepte de esta manera ya que si huviera algun error no devolveria 200, pero en este caso si devuelve 200.
Gracias.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.