recomendaciones_de_arquitectura

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
recomendaciones_de_arquitectura [2017/11/13 17:57] – [Consideraciones] jorge.brugger_dasurecomendaciones_de_arquitectura [2017/11/16 18:05] (actual) emanuel.yanez_dasu
Línea 5: Línea 5:
 ==== Introducción ==== ==== Introducción ====
  
-La información presentada a continuación, intenta ser una guía con recomendaciones de arquitectura, para implementar los medios interoperables, consensuados por el Proyecto MAIS, para establecer un modelo  único   de   transacción   para   los   ítems   de   facturación y   débitos,   entre   Prestadores   y Financiadores.+La información presentada a continuación, intenta ser una guía con recomendaciones de arquitectura, para implementar los medios interoperables, consensuados por el Proyecto MAIS, para establecer un modelo único de transacción para los ítems de facturación y débitos, entre Prestadores y Financiadores.
  
 ==== Consideraciones ==== ==== Consideraciones ====
Línea 12: Línea 12:
   * El formato seleccionado para la transferencia de los ítems de facturación y débitos están basados en los recursos FHIR ([[https://www.hl7.org/fhir/|https://www.hl7.org/fhir/]])   * El formato seleccionado para la transferencia de los ítems de facturación y débitos están basados en los recursos FHIR ([[https://www.hl7.org/fhir/|https://www.hl7.org/fhir/]])
   * Los servicios definidos, fueron consensuados bajo el contexto de transferencia entre Prestadores y Financiadores.   * Los servicios definidos, fueron consensuados bajo el contexto de transferencia entre Prestadores y Financiadores.
- 
  
 ==== Arquitectura ==== ==== Arquitectura ====
 +
 +{{https://www.mais.org.ar/storage/app/media/Arquitectura/Arquitectura.png?nolink&|Arquitectura}}
 +
 +==== Servicios Definidos ====
 +
 +Los servicios definidos y que se deben implementar para respetar lo establecido son:
 +
 +  * Login: Servicio de autenticación de Prestadores en el servidor del Financiador.
 +  * Facturación: Recibe los ítems de facturación enviados por los Prestadores para su posterior validación por parte del Financiador.
 +  * Débitos: Retorna el resultado de la validación de los ítems de facturación que fueron enviados con anterioridad a través del servicio de Facturación.
 +  * Documentación de Respaldo: Servicio para transferir la documentación digitalizada que será referenciada en los trámites de facturación.
 +
 +Todos los servicios pueden trabajar con JSON o XML (según definición de FHIR), por defecto utiliza JSON, ya que con esta implementación, la información que se transmite es menor. Para seleccionar un formato u otro se debe definir el HEADER HTTP “Accept” en “application/xml” o “application/json”. \\ Además están securizados con oAuth2, con excepción del endpoint de Autenticación.
 +
 +==== Endpoints Implementados ====
 +
 +=== Autenticación: ===
 +
 +''POST /<context>/auth''
 +  * Se debe enviar el usuario y la password. La gestión del usuario lo realiza el Financiador.
 +  * Retorna token para utilizar en los endpoints restantes. El token tiene una validez establecida.
 +
 +Este servicio permite a las aplicaciones que deseen enviar información a un Financiador conectarse, autenticarse y obtener un token que habilita el acceso a los otros servicios. Ver bibliotecas que permiten la implementación de oAuth2 en [[http://oauth.net/2/|http://oauth.net/2/]]
 +
 +La secuencia es la siguiente:
 +
 +  - El Cliente FHIR (CF) envía el pedido de token al servicio de autenticación (SA) con un usuario y password asignado por la organización que controla al servicio.
 +  - El servicio verifica el usuario y la password, devuelve al CF un token con una validez o vencimiento.
 +  - Mientras el token sea válido, el CF puede utilizar este token para acceder a los servicios de documentos, facturación, débitos, de acuerdo a sus roles asignados. El token se incluye en el header HTTPS de la solicitud al los diferentes servicios, según lo establecido por oAuth.
 +  - En caso que el usuario/password no sea válido, el servidor de autenticación devolverá error HTTP 401 (Unauthorized Access) .
 +  - Si el token no es válido o expiró, cualquiera de los servidores devolverá error HTTP 401.
 +
 +Ejemplos xml o json con parametros definidos en formato Raw: [[http://mais.dasu.com.ar/index.php|]]
 +
 +=== Documentos ===
 +
 +''POST /<context>/documento''
 +  * Se debe enviar una lista de objetos Binary (Documentos/CDA).
 +  * Retorna una lista de ID de objetos (Documentos/CDA) almacenados.
 +
 +Este servicio permite enviar al financiador la documentación de respaldo de la facturación, se puede tranferir los CDA recomendados por MAIS o documentos en cualquier otro formato. Estos documentos se pueden asociar a los ítems de facturación por medio de un ID o URL generada por el Financiador. El documento enviado se debe transformar al formato binario base 64.
 +
 +Ejemplos xml o json con parametros definidos en formato Raw: [[http://mais.dasu.com.ar/index.php|]]
 +
 +=== Facturación ===
 +
 +''POST /<context>/facturacion''
 +  * Se debe enviar los ítems de facturación en formato Bundle/Claim definido.
 +  * Retorna errores de formato del archivo, error de autenticación o un ID de trámite para ser consultado posteriormente. La validación de negocio de la información enviada es asincrónica.
 +
 +A este servicio se envían las transacciones de facturación desde los Prestadores hacia los Financiadores, que las procesan y devuelven el estado inicial de aceptación de cada renglón. La validación completa es asincrónica y la respuesta de esta validación se gestiona con el servicio de Débitos. Por pruebas realizadas, se recomienda enviar archivos no mayores a 1000 items, utilizando formato JSON.
 +
 +Ejemplos xml o json con parametros definidos en formato Raw: [[http://mais.dasu.com.ar/index.php|]]
 +
 +=== Débitos ===
 +
 +<code>
 +GET /<context>/debitos/fecha_rango/<desde (ddMMyyyy)>/<hasta (ddMMyyyy)>
 +GET /<context>/debitos/nro_factura/<nro_factura (Letra%20Delegación%20Número)>
 +GET /<context>/debitos/transaccion/<ID Transacción (ID que retorna servicio de facturación)>
 +</code>
 +
 +Pedido de estado del análisis de los items de facturación., puede ser por fechas, número de factura o id de transacción.
 +
 +  * Retorna los débitos con el formato definido Bundle/ClaimsResponse.
 +      * Por rango de fechas, retorna los débitos o una respuesta con el estado de los ítems contenidos en las facturas dentro del rango de fechas consultado.
 +      * Por número de factura retorna los débitos o una respuesta con el estado de los ítems contenidos en la factura consultada.
 +      * Por ID de transacción retorna los débitos o una respuesta con el estado de los ítems con el ID consultado.
 +
 +A este servicio los Prestadores envían las consultas para conocer el estado de los trámites y ver si hay débitos generados por los Financiadores. Retornará una lista con información del estado del trámite, (en proceso, en proceso con débitos, finalizado y finalizado con débitos).
 +
 +Ejemplos xml o json con parámetros definidos en formato Raw: [[http://mais.dasu.com.ar/index.php|]]
 +
 +=== Diagrama de Secuencia de Uso de los Servicios ===
 +
 +Comienzo del proceso de transferencia de Información: Facturación
 +
 +{{  https://www.mais.org.ar/storage/app/media/Arquitectura/Facturacion.jpg?nolink&695x628  |www.mais.org.ar_storage_app_media_arquitectura_facturacion.jpg}}
 +
 +Consulta de Débitos, al mes o a los 15 días.
 +
 +{{  https://www.mais.org.ar/storage/app/media/Arquitectura/Consulta-de-debitos.jpg?nolink&685x631  |www.mais.org.ar_storage_app_media_arquitectura_consulta-de-debitos.jpg}}
 +
 +=== Documentación Adjunta ===
 +
 +  * Raw con los ejemplos de los posibles Request y Response de los diferentes endpoints. [[https://link|https://link]]
 +  * Servidor de para pruebas: [[https://link|https://link]]
 +  * Documentación en línea: [[http://|http://]]
 +  * Servidor de Prueba: [[http://|http://]]?????
 +  * Funetes del modelo [[https://github.com/mpielvitori/mais-fhir-conectathon|https://github.com/mpielvitori/mais-fhir-conectathon]].
  
  
  • recomendaciones_de_arquitectura.1510595850.txt.gz
  • Última modificación: 2017/11/13 17:57
  • por jorge.brugger_dasu