¿Cómo integrarse al proyecto?

Impulsado desde el Instituto de Innovación y Justicia de la Junta Federal de Cortes de Argentina (JUFEJUS), actualmente participan las áreas de tecnología de los poderes judiciales. Es un proyecto abierto y participativo: podrán involucrarse tanto organismos públicos como privados.

¿Qué hay en el repositorio?

Vas a poder descargar las librerías de integración con el Bus Federal de Justicia y código de ejemplo sobre cómo integrarlas a tu sistema de gestión. Si no usás C#, podés integrar accediendo directamente a la API REST del BUS mientras el resto de las librerías esté en desarrollo.

Para eso tenemos disponible un ambiente de SandBox pensado y desplegado para que todos los interesados puedan desarrollar y probar sus integraciones.

Disponible: C# Próximamente: Java Próximamente: PHP Próximamente: Python Próximamente: NodeJS

¿Cómo accedo al sandbox?

Una vez que hayas gestionado las credenciales de acceso, podés conectarte a la API de integración. Desde ahí vas a poder acceder a los métodos para la gestión de dependencias de tu organización (altas, bajas y modificaciones), envío y recepción de documentos electrónicos, y descarga del comprobante de la transacción realizada.

Tips para integrar

Toda la interacción de tu sistema de gestión con el BUS se instrumenta con una interfaz API REST autenticada, sincrónica por definición. Pero la operación interna del BUS es completamente asincrónica: el envío de un documento se da en dos pasos, y hasta que no esté completo el segundo no vas a saber si la operación fue exitosa.

Tené en cuenta que la transacción puede demorar hasta horas en finalizar, ya que se utilizan dependencias externas al BUS que pueden adicionar demoras al proceso.

Flujo de envío y recepción

Para enviar un documento

  1. Invocás /enviar con la estructura de datos del documento (según la definición OpenAPI). El BUS te devuelve un código uuid que identifica la transacción.
  2. La transacción todavía puede ser rechazada — persistila como PENDIENTE hasta confirmar.
  3. Cuando finaliza (enviado o rechazado), el BUS emite un TICKET: un JSON con el detalle de los pasos, los hashes de los documentos y el sellado en la Blockchain Federal Argentina.
  4. Descargás el ticket con /ticket pasando el uuid. Ahí sabés si fue exitoso o el motivo del rechazo.
  5. Si nunca recibís el ticket, usá el uuid para reclamar y que podamos rastrear la transacción.

Para recibir un documento

  1. La única forma de saber si te llegó un documento es a través de los tickets. Armá un loop con delay que consulte /ticket/nuevos — te devuelve los tickets con leído: false.
  2. Iterá sobre la colección y extraé el uuid de cada uno.
  3. Descargá el documento por /documento (BASE64), /documento/binario o /documento/link (enlace de un solo uso).
  4. Al descargarlo, el ticket queda marcado como leído y ya no se informa en próximas llamadas.

El BUS no almacena los documentos de forma permanente: solo asegura la entrega, el cumplimiento de un conjunto mínimo de políticas y un registro trazable de la transacción. Una vez descargado, el documento se elimina del repositorio unos días después.

BOT de documentos electrónicos

Un BOT que genera envíos y respuestas de documentos electrónicos de prueba, para no depender de nada externo durante la integración.

Solicitar el envío de un documento

Invocá /api/enviar_documento?organismo=[código]&dependencia=[código] y el BOT te envía un documento de prueba a esa dependencia.

Responder el envío de un documento

Enviá un documento al organismo PDIBFJ-AR-B-PUB, dependencia echo-1. En menos de 30 segundos el BOT te devuelve un documento de respuesta.

Para verificar que el BOT esté funcionando, invocá /status/ping — debería responder pong. URL del BOT en sandbox: documentbot-qa.bus-justicia.org.ar (misma autenticación que la API de borde del BUS).