meta data de esta página
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| lenguaje_php [2021/06/14 21:48] – [PASO 4: Recibir y procesar la respuesta del servicio web de integración de TFHKA] jsojo | lenguaje_php [2022/08/29 19:34] (actual) – lmartinez | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| ====== Ejemplo en lenguaje PHP ====== | ====== Ejemplo en lenguaje PHP ====== | ||
| - | Tiene como objetivo ejemplificar el proceso de conexión, acceso y uso de las propiedades y métodos ofrecidos por el Servicio Web de Integración de TFHKA a través del lenguaje de programación PHP | + | Tiene como objetivo ejemplificar el proceso de conexión, acceso y uso de las propiedades y métodos ofrecidos por el Servicio Web de Integración de EBI a través del lenguaje de programación PHP |
| Lo más importante es establecer los pasos necesarios para realizar una integración exitosa. | Lo más importante es establecer los pasos necesarios para realizar una integración exitosa. | ||
| Línea 7: | Línea 7: | ||
| Criterios a tomar en cuenta: | Criterios a tomar en cuenta: | ||
| - | * Establecer ruta y Tokens para conectarnos y utilizar los métodos expuestos por el Servicio Web de Integración de TFHKA. | + | * Establecer ruta y Tokens para conectarnos y utilizar los métodos expuestos por el Servicio Web de Integración de EBI . |
| - | * Construir / Armar el objeto Documento Electrónico (Factura) que se desea enviar al Servicio Web de Integración de TFHKA. | + | * Construir / Armar el objeto Documento Electrónico (Factura) que se desea enviar al Servicio Web de Integración de EBI . |
| - | * Enviar el documento al Servicio Web de Integración de TFHKA para su procesamiento. | + | * Enviar el documento al Servicio Web de Integración de EBI para su procesamiento. |
| - | * Recibir y procesar la respuesta del Servicio Web de TFHKA en nuestro proyecto, según sea requerido. | + | * Recibir y procesar la respuesta del Servicio Web de EBI en nuestro proyecto, según sea requerido. |
| Pasos para realizar la integración: | Pasos para realizar la integración: | ||
| - | PASO 1: Definir variables con la ruta y los tokens requeridos por el Servicio Web de Integración de TFHKA. | + | PASO 1: Definir variables con la ruta y los tokens requeridos por el Servicio Web de Integración de EBI . |
| - | PASO 2: Construir el Documento Electrónico a enviar al Servicio Web de Integración de TFHKA. | + | PASO 2: Construir el Documento Electrónico a enviar al Servicio Web de Integración de EBI . |
| - | PASO 3: Enviar el Documento Electrónico construido en el paso 3 al Servicio Web de Integración de TFHKA. | + | PASO 3: Enviar el Documento Electrónico construido en el paso 3 al Servicio Web de Integración de EBI . |
| - | PASO 4: Recibir y procesar la Respuesta del Servicio Web de Integración de TFHKA. | + | PASO 4: Recibir y procesar la Respuesta del Servicio Web de Integración de EBI . |
| **IMPORTANTE**: | **IMPORTANTE**: | ||
| - | Para mayor información y detalles sobre el proceso, puede consultar el **Manual de Integración de TFHKA** | + | Para mayor información y detalles sobre el proceso, puede consultar el **Manual de Integración de EBI ** |
| - | ==== PASO 1: Definir variables con la ruta y los tokens requerido por el servicio web de TFHKA ==== | + | ===== PASO 1: Definir variables con la ruta y los tokens requerido por el servicio web de EBI ===== |
| - | //A continuación definiremos la ruta y los TOKENS requeridos por el Servicio Web de Integración de TFHKA para enviar documentos electrónicos, | + | //A continuación definiremos la ruta y los TOKENS requeridos por el Servicio Web de Integración de EBI para enviar documentos electrónicos, |
| // // | // // | ||
| Línea 34: | Línea 34: | ||
| $tokenPassword = " | $tokenPassword = " | ||
| - | ==== PASO 2: Construir el documento electrónico a enviar al servicio web de integración de TFHKA ==== | + | ===== PASO 2: Construir el documento electrónico a enviar al servicio web de integración de EBI ===== |
| En este ejemplo utilizaremos Clases, Atributos y Métodos creados con la finalidad de organizar mejor la estructura del archivo y del cuerpo de código fuente en general. | En este ejemplo utilizaremos Clases, Atributos y Métodos creados con la finalidad de organizar mejor la estructura del archivo y del cuerpo de código fuente en general. | ||
| Línea 74: | Línea 74: | ||
| $factura-> | $factura-> | ||
| - | - Ya teniendo listo el documento, es posible enviarlo al Servicio Web de Integración de TFHKA | + | - Ya teniendo listo el documento, es posible enviarlo al Servicio Web de Integración de EBI |
| - | ==== PASO 3: Enviar el documento electrónico construido en el paso 3 al servicio web de integración de TFHKA ==== | + | ===== PASO 3: Enviar el documento electrónico construido en el paso 3 al servicio web de integración de EBI ===== |
| - | A continuación definiremos la ruta y los TOKENS requeridos por el Servicio Web de Integración de TFHKA para enviar documentos electrónicos, | + | A continuación definiremos la ruta y los TOKENS requeridos por el Servicio Web de Integración de EBI para enviar documentos electrónicos, |
| <code -> | <code -> | ||
| Línea 89: | Línea 89: | ||
| ); | ); | ||
| - | - A continuación, | + | - A continuación, |
| $respWsPa = json_decode(json_encode($wsPa-> | $respWsPa = json_decode(json_encode($wsPa-> | ||
| Línea 97: | Línea 97: | ||
| </ | </ | ||
| - | ==== PASO 4: Recibir y procesar la respuesta del servicio web de integración de TFHKA ==== | + | ===== PASO 4: Recibir y procesar la respuesta del servicio web de integración de EBI ===== |
| - | La respuesta del Servicio Web de TFHKA será enviada inmediatamente. | + | La respuesta del Servicio Web de EBIserá |
| En este ejemplo, la respuesta del Servicio Web se muestra directamente a través de la pantalla. | En este ejemplo, la respuesta del Servicio Web se muestra directamente a través de la pantalla. | ||
| Línea 105: | Línea 105: | ||
| En caso de recibir una respuesta positiva para el envío del Documento Electrónico (código 200), se presentará un enlace para observar los detalles a través de la página de Consulta de Facturas por Qr en una pestaña adicional de su navegador web. | En caso de recibir una respuesta positiva para el envío del Documento Electrónico (código 200), se presentará un enlace para observar los detalles a través de la página de Consulta de Facturas por Qr en una pestaña adicional de su navegador web. | ||
| - | La respuesta del Servicio Web de TFHKA incluye: código de la respuesta, resultado, mensaje, cufe y Qr, entre otros. | + | La respuesta del Servicio Web de EBI incluye: código de la respuesta, resultado, mensaje, cufe y Qr, entre otros. |
| Para mayor detalle de la respuesta del Servicio Web, podría visualizar el resultado a través de la siguiente instrucción: | Para mayor detalle de la respuesta del Servicio Web, podría visualizar el resultado a través de la siguiente instrucción: | ||
| Línea 299: | Línea 299: | ||
| </ | </ | ||
| - | ==== Definición de clases para mostrar información en el Front de esta pagina de ejemplo | + | ===== Definición de clases para mostrar información en el Front de esta pagina de ejemplo |
| <code -> | <code -> | ||
| Línea 310: | Línea 310: | ||
| { | { | ||
| - | echo ("< | + | echo ("< |
| } | } | ||
| Línea 413: | Línea 413: | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | ===== Definición de estilos CSS a utilizar en el Front de esta pagina de ejemplo ===== | ||
| + | |||
| + | <code -> | ||
| + | <style type=" | ||
| + | |||
| + | .texto2 { | ||
| + | |||
| + | color: #990000; | ||
| + | |||
| + | font-size: 1rem; | ||
| + | |||
| + | } | ||
| + | |||
| + | .texto3 { | ||
| + | |||
| + | color: #002d99; | ||
| + | |||
| + | font-size: 1.8rem; | ||
| + | |||
| + | padding-left: | ||
| + | |||
| + | } | ||
| + | |||
| + | .texto4 { | ||
| + | |||
| + | color: #d52d06; | ||
| + | |||
| + | font-size: 1.5rem; | ||
| + | |||
| + | padding-left: | ||
| + | |||
| + | } | ||
| + | |||
| + | .texto6 { | ||
| + | |||
| + | color: #fff; | ||
| + | |||
| + | font-size: 1.5rem; | ||
| + | |||
| + | padding-left: | ||
| + | |||
| + | } | ||
| + | |||
| + | .encabezado { | ||
| + | |||
| + | margin: 10 0 5px 0; | ||
| + | |||
| + | padding: 15px; | ||
| + | |||
| + | border-top: 1px solid #E9ECEF; | ||
| + | |||
| + | background: #5077a3; | ||
| + | |||
| + | background: -webkit-linear-gradient(to bottom right, rgb(2, 66, 179) 0%, rgb(0, 47, 134) 100%); | ||
| + | |||
| + | background: linear-gradient(to bottom right, rgb(2, 66, 179) 0%, rgb(0, 47, 134) 100%); | ||
| + | |||
| + | box-shadow: 0px 1px 3px -1px rgba(41, 70, 97, 0.2); | ||
| + | |||
| + | position: relative; | ||
| + | |||
| + | border-bottom: | ||
| + | |||
| + | color: #fff; | ||
| + | |||
| + | font-size: 1.9rem; | ||
| + | |||
| + | padding-left: | ||
| + | |||
| + | } | ||
| + | |||
| + | .encabezado2 { | ||
| + | |||
| + | width: 60%; | ||
| + | |||
| + | margin-top: 20px; | ||
| + | |||
| + | border: 2px solid #c8dbff; | ||
| + | |||
| + | background-color: | ||
| + | |||
| + | position: relative; | ||
| + | |||
| + | color: #002d99; | ||
| + | |||
| + | font-size: 1rem; | ||
| + | |||
| + | border-radius: | ||
| + | |||
| + | padding: 5px; | ||
| + | |||
| + | line-height: | ||
| + | |||
| + | text-align: left; | ||
| + | |||
| + | text-indent: | ||
| + | |||
| + | } | ||
| + | |||
| + | .encabezado3 { | ||
| + | |||
| + | width: 100% margin-top: 10px; | ||
| + | |||
| + | background-color: | ||
| + | |||
| + | position: relative; | ||
| + | |||
| + | color: #002d99; | ||
| + | |||
| + | font-size: 1rem; | ||
| + | |||
| + | border-radius: | ||
| + | |||
| + | padding: 5px; | ||
| + | |||
| + | line-height: | ||
| + | |||
| + | text-align: left; | ||
| + | |||
| + | padding-left: | ||
| + | |||
| + | } | ||
| + | |||
| + | .encabezado4 { | ||
| + | |||
| + | width: 60%; | ||
| + | |||
| + | margin-top: 20px; | ||
| + | |||
| + | border: 2px solid #c8dbff; | ||
| + | |||
| + | border-radius: | ||
| + | |||
| + | } | ||
| + | |||
| + | .encabezado5 { | ||
| + | |||
| + | width: 60%; | ||
| + | |||
| + | margin-top: 50px; | ||
| + | |||
| + | border: 2px solid #c8dbff; | ||
| + | |||
| + | border-radius: | ||
| + | |||
| + | } | ||
| + | |||
| + | .encabezado6 { | ||
| + | |||
| + | margin: 10 0 30px 0; | ||
| + | |||
| + | padding: 0 30px; | ||
| + | |||
| + | border-top: 1px solid #c8dbff; | ||
| + | |||
| + | background-color: | ||
| + | |||
| + | box-shadow: 0px 1px 3px -1px rgba(41, 70, 97, 0.2); | ||
| + | |||
| + | position: relative; | ||
| + | |||
| + | border-bottom: | ||
| + | |||
| + | color: #990000; | ||
| + | |||
| + | font-size: 1.6rem; | ||
| + | |||
| + | text-indent: | ||
| + | |||
| + | } | ||
| + | |||
| + | ul { | ||
| + | |||
| + | list-style: none; | ||
| + | |||
| + | } | ||
| + | |||
| + | li { | ||
| + | |||
| + | margin: 0px 0px 1px 0px; | ||
| + | |||
| + | } | ||
| + | |||
| + | button { | ||
| + | |||
| + | position: relative; | ||
| + | |||
| + | display: inline-block; | ||
| + | |||
| + | padding: 8px 10px; | ||
| + | |||
| + | background-image: | ||
| + | |||
| + | background-image: | ||
| + | |||
| + | text-decoration: | ||
| + | |||
| + | color: #fff; | ||
| + | |||
| + | font-size: 15px; | ||
| + | |||
| + | font-family: | ||
| + | |||
| + | font-weight: | ||
| + | |||
| + | border-radius: | ||
| + | |||
| + | float: right; | ||
| + | |||
| + | } | ||
| + | |||
| + | button: | ||
| + | |||
| + | background: -webkit-linear-gradient(to bottom right, rgb(1, 85, 232) 0%, rgb(0, 81, 232) 100%); | ||
| + | |||
| + | background: linear-gradient(to bottom right, rgb(1, 85, 232) 0%, rgb(0, 81, 232) 100%); | ||
| + | |||
| + | color: #fff; | ||
| + | |||
| + | } | ||
| + | |||
| + | a { | ||
| + | |||
| + | position: relative; | ||
| + | |||
| + | display: inline-block; | ||
| + | |||
| + | padding: 8px 10px; | ||
| + | |||
| + | background-image: | ||
| + | |||
| + | background-image: | ||
| + | |||
| + | text-decoration: | ||
| + | |||
| + | color: #fff; | ||
| + | |||
| + | font-size: 15px; | ||
| + | |||
| + | font-family: | ||
| + | |||
| + | font-weight: | ||
| + | |||
| + | border-radius: | ||
| + | |||
| + | float: right; | ||
| + | |||
| + | } | ||
| + | |||
| + | a:hover { | ||
| + | |||
| + | background: -webkit-linear-gradient(to bottom right, rgb(1, 85, 232) 0%, rgb(0, 81, 232) 100%); | ||
| + | |||
| + | background: linear-gradient(to bottom right, rgb(1, 85, 232) 0%, rgb(0, 81, 232) 100%); | ||
| + | |||
| + | color: #fff; | ||
| + | |||
| + | } | ||
| + | |||
| + | hr { | ||
| + | |||
| + | border: 2px solid #c8dbff; | ||
| + | |||
| + | background-color: | ||
| + | |||
| + | } | ||
| + | |||
| + | </ | ||
| </ | </ | ||