Saltar a contenido

Conexiones Directas

La transacción para generar facturas se envía a la liga :

  • https://facturas.easysmart.com.mx/cgi-bin/externos/timbrarG40
  • La transacción debe ser un POST. No funciona con GET.

RFC Emisor de Pruebas vigente

  • Persona moral EKU9003173C9
  • Persona física XAMA620210DQ5
  • Usuario y contraseña para el Layout : EMPRESA:EXTERNOS|testext452|EKU9003173C9||

Recomendaciones

Debe enviar el formato estándar de facturación con los datos correctamente llenos dentro de la variable txtdata

Ejemplo : txtdata = "formato estándar con saltos de línea en utf8";

Nota importante

Los campos numéricos (cantidades, precios, totales, deben venir con la cantidad de decimales que desea que aparezcan en la factura, el sistema "no" agrega o quita decimales. Elementos como $ y comas, son eliminados de los números.

El layout se debe codificar en url-encode. Buscar en su lenguaje como codificar en este formato para que no existan problemas de transferencias de datos con símbolos especiales como : & % = y otros similares.

Para que no tenga problemas de que los caracteres con acentos o ñ se conviertan en caracteres o símbolos “raros”. Debe codificar su layout en UTF8.

Si no puede localizar una librería o función en su lenguaje que le permita realizar esta codificación, por lo menos reemplace los símbolos con la siguiente tabla.

& --> %26
% --> %25
= --> %3D

Mensaje de respuesta estándar

El sistema regresa la página HTML que se debe imprimir en un navegador o un mensaje de error, en formato HTML. Dentro del código HTML viene 2 etiqueta de campo hidden :

  • <input type="hidden" name="status" value="mensaje">
  • <input type="hidden" name="uuid" value="UUID_timbrado_SAT">

Si el mensaje inicia con "ERROR:", la transacción no funcionó y el mensaje incluye el error generado.

Si el mensaje es "OK", entonces el HTML contiene la impresión de la factura a desplegar en el navegador.

Posteriormente puede descargar el XML, cancelar o realizar otras acciones utilizando las instrucciones que aparecen en las siguientes páginas.

Nota

El principal motivo por el cual se genera la respuesta en HTML, es porque en el inicio del servicio los programadores tenían muy poca experiencia con internet y usaban los componentes DLL de Microsoft® para abrir una ventana del navegador e interactuar con la ventana del navegador por medio del DLL.

Hoy en día ofrecemos otra forma de respuesta como se describe abajo.

Nota

Al generar una factura, el sistema envía el XML y PDF a las direcciones de correo que haya agregado en el archivo de la factura.

El mensaje de respuesta es una página HTML, por si desea presentar la imagen de la factura generada al usuario y en ella misma recibir el estatus de la transacción.

Si no desea presentarla, puede desechar el HTML una vez que haya leído el estatus de respuesta.

En entornos de programación de Windows®, el acceso a el documento recibido se realiza por medio de objetos de Windows®, y se puede acceder al dato específico sin necesidad de procesar el texto directamente, por ejemplo:

estatus = IE.document.Forms(0).namedItem("status").Value

uuid = IE.document.Forms(0).namedItem("uuid").Value

Debido a que la información para realizar este tipo de conexiones, depende mucho de su lenguaje de programación, es necesario que consulte los códigos ejemplo que se tienen en el paquete de información, hay ejemplos para : Visual Basic, C#.

Recibir XML timbrado

Si no desea recibir una respuesta HTML, sino el XML timbrado, entonces deberá enviar en su Layout el comando:

RESPUESTA:XML
RESPUESTA:XML2

  • RESPUESTA = XML
    • Regresa el XML timbrado, no se envía correo electrónico con XML y PDF al cliente.
    • Útil si desea generar su propia versión impresa, PDF y enviar correos usted mismo
  • RESPUESTA = XML2
    • Regresa el XML timbrado, se envía correo electrónico con XML y PDF al cliente.
    • Útil para recibir directamente el XML sin, necesidad de realizar una segunda transacción para descargarlo

Esto hace que reciba como respuesta el XML timbrado en caso de que todo salga bien.
O en caso de errores recibirá el mensaje de respuesta HTML normal con el estatus del error.

Códigos de ejemplo

Código Delphi
Código C#
Visual Basic

Layout

El layout es el archivo de texto que debe enviar para que se genere un documento.
Para ver las instrucciones del Layout actual ver la sección de CFDI 4.0


Continuar a: Ligas a otros servicios