gnp.pending-receipts inicia sesión en el portal de intermediarios de
GNP, abre Pólizas pendientes, exporta el reporte y publica dos archivos:
dataset.json con los datos ya limpios, y ExportResult.xlsx con el original.
El output del paso trae el resumen y la referencia a ambos.
Limpia pero no filtra: devuelve todas las pólizas pendientes de todos los ramos
y conductos. Decidir cuáles te interesan es trabajo del siguiente paso.
Requisito previo
Registra una credencial de tipognp.portal para el mismo tenant de la
automatización:
La definición del paso guarda únicamente el
credentialId. La API no devuelve
ni guarda la contraseña dentro de la automatización.
Campos del paso
Output
El output es pequeño y no crece con el número de pólizas: trae el resumen y la referencia de los dos archivos. Puedes usar{{steps.0.output.summary.receipts}}
en un paso de HTTP sin escribir código.
Los datos van en un archivo y no dentro del output porque el output de un paso
tiene un techo de 32 KB: arriba de eso la plataforma lo mueve a almacenamiento
y el paso siguiente lo recibe vacío. El dataset pesa unos 2 KB por recibo, así
que un reporte de 58 recibos ya lo cruzaría.
Qué trae dataset.json
El contrato es insurance.policy-receipt-dataset.v1, neutral entre aseguradoras.
Este extracto muestra los campos principales; el archivo incluye además
rawFields, extensions y sources en cada nivel.
billing.firstCollectionChannel.value y los
recibos vienen agrupados por póliza. Cada valor conserva su texto original en
raw.
Los números de póliza y de recibo son cadenas, porque GNP los reporta con ceros
a la izquierda. lineOfBusiness no es un catálogo cerrado.
Ejemplo
El XLSX original
Para programar contra los datos usadataset.json, no este archivo: cada recibo
lleva en rawFields todas las columnas de su fila tal como las reportó GNP,
incluidas las que el contrato no modela. El XLSX está para auditar la corrida
contra el archivo exacto que produjo el portal, y para reenviarlo a alguien que
quiera una hoja de cálculo.
Se llama ExportResult.xlsx, tiene una hoja, y una fila por recibo:
Si de todos modos lo quieres leer, usa
file.xlsx():
Archivos entre pasos.
Decidir sobre el reporte
Este ejemplo responde si cinco pólizas concretas están pendientes con conductoIntermediario, y dice por qué no cuando no lo están.
noEncontradas es la diferencia entre un resultado vacío y una respuesta: te
dice si la póliza ya no está pendiente o si lo está por otro conducto.
Errores
El paso falla y detiene la ejecución si no puede iniciar sesión, si no puede exportar el reporte, o si el archivo llega vacío o no es una hoja de cálculo. Un cambio de columnas en GNP no lo hace fallar. Las columnas se localizan por nombre, así que reordenarlas o agregar una no afecta nada, y la columna agregada llega en elrawFields de cada recibo. Si desaparece una esperada, sus campos
quedan vacíos y issues recibe un warning con código
GNP_REPORT_COLUMN_MISSING que la nombra.

