Flujo general del proceso
A continuación se detalla el recorrido completo de un documento, desde que se genera en Oracle hasta que su estado final queda reflejado nuevamente en Oracle.
Paso 1 · Generación del XML en Oracle
- Evento disparador: emisión de un documento electrónico en Oracle.
- Oracle genera un XML personalizado.
- El archivo se almacena en una ruta definida en el servidor Oracle (
/Localhost/ERP/, según ambiente de cada cliente). - El nombre del archivo sigue el formato:
01-M001P001-00000031.xml
Paso 2 · Extracción canónica
- Servicio responsable: Extractor Canónico de Gosocket.
- Frecuencia: cada 5 minutos (configurable).
- Protocolo: HTTPS.
- Los endpoints de extracción están segmentados por tipo de documento y por ambiente — consulta el detalle en Endpoints de extracción.
Proceso:
- Consulta la existencia de archivos nuevos.
- Descarga el archivo.
- Marca el archivo como procesado.
Paso 3 · Transformación XSLT #1 (Oracle → DTE)
- Entrada: XML generado por Oracle (paso 1).
- Salida: XML en formato DTE de Gosocket.
- Validaciones aplicadas:
- Estructura del XML.
- Campos obligatorios.
- Formato tributario.
- Totales.
| Escenario | Resultado |
|---|---|
| Éxito | El flujo continúa al paso 4. |
| Error | Se registra el error junto con el log técnico correspondiente. |
Paso 4 · Envío del DTE a la API de Gosocket
- Endpoint:
https://developers-sbx.gosocket.net/api/v1/Document/SendDocumentToAuthority - Método:
POST - Headers:
Authorization: Basic authContent-Type: application/xml
Internamente, Gosocket realiza: recepción del documento, validación estructural y la transformación XSLT #2.
Paso 5 y 6 · Transformación XSLT #2 y validación en la DGI
- Entrada: XML DTE (obtenido en el paso 3).
- Transformación: XSLT #2, que convierte el DTE al formato oficial exigido por la DGI.
- La DGI recibe el documento, lo procesa y responde con un código de estado. Consulta el detalle en Códigos de respuesta.
Paso 7 · Registro en el Inbox
Independientemente del resultado (aprobado o rechazado), el documento se registra en el Portal Inbox de Gosocket, guardando:
- XML original (Oracle).
- XML DTE.
- XML DGI.
- Estado del documento.
- Fecha de envío.
- Código de generación.
- Sello de recepción.
Paso 8 · Webhook de notificación
Gosocket notifica el resultado a Oracle mediante un webhook. Los endpoints de notificación también están segmentados por tipo de documento y ambiente — consulta Endpoints de notificación, donde también se muestra un ejemplo del payload enviado.
- Método:
POST - Seguridad: validación por token, lista blanca de IPs y certificado SSL.
Paso 9 · Actualización en Oracle ERP
Oracle recibe la notificación del webhook y:
- Actualiza el estado del documento.
- Marca el documento como Aprobado, Rechazado o Error técnico.
Revisa la sección de Transformaciones XSLT y Manejo de errores para conocer los escenarios de error y las recomendaciones de recuperación.