Resumen de Mapeo
Los resúmenes son "proyecciones" de una unidad de trabajo y se basan en los datos recibidos por ODS. Representan el estado actual de una unidad de trabajo, y puede ser buscada por una serie de diferentes campos.
Estos datos se "mapean" en campos de resumen predefinidos y, por extensión, en algunos campos de búsqueda indexados, a través de una combinación de núcleo, predeterminado y custom mappings.
-
Núcleo mappings son generalmente esenciales para ODS funcionalidad, y no pueden ser anulados o customised.
-
Predeterminado mappings son los proporcionados por ODS listo para usar, y se aplican a ISO20022 MDS tipos y PDS tipos.
-
Personalizado mappings son específicos de la solución, y pueden anular el valor predeterminado mappings.
| Datos de origen | Core Mapeos | Asignaciones Predeterminadas | Personalizable |
|---|---|---|---|
ISO20022 MDS |
Sí |
Sí |
Sí |
IPF PDS |
Sí |
Sí |
Sí |
Personalizado PDS |
No |
No |
Sí |
IPF Processing Data |
Sí |
No |
No |
Ambos MDS/PDS mappings tiene valores predeterminados y custom mappings.
Core Mapeos
ISO20022 MDS
| Nombre del Campo | Fuente | Notas | Secuencia |
|---|---|---|---|
instrucción Recibida En |
pain.001(marca de tiempo del evento fuente) pacs.008(marca de tiempo del evento fuente) pacs.004(marca de tiempo del evento fuente) camt.029( camt.056( |
Poblado al recibir cada mensaje |
Más temprano |
ejecución Iniciada En |
pacs.008(marca de tiempo del evento fuente) |
Poblado al recibir cada mensaje |
Más temprano |
settlementCompletedAt |
pacs.002(marca de tiempo del evento fuente) |
Poblado al recibir cada mensaje |
Último |
IPF PDS
| Nombre del Campo | Fuente | Secuencia |
|---|---|---|
journeyType |
|
Siempre actualiza si hay un cambio. |
paymentType |
|
Último |
csm |
|
Último |
zonaHoraria |
|
Último |
prioridad |
|
Último |
relatedUnitOfWorkId |
|
Siempre actualiza si hay un cambio, pero no debe cambiar durante la vida útil de una unidad de trabajo. |
Process Flow Event
| Nombre del Campo | Fuente | Secuencia | Notas |
|---|---|---|---|
journeyType |
|
Siempre actualiza si hay un cambio. |
Obsoleto |
paymentType |
|
Último |
Obsoleto |
csm |
|
Último |
Obsoleto |
zonaHoraria |
|
Último |
Obsoleto |
prioridad |
|
Último |
Obsoleto |
relatedUnitOfWorkId |
|
Siempre actualiza si hay un cambio, pero no debe cambiar durante la vida útil de una unidad de trabajo. |
Obsoleto |
reasonText |
|
Último |
|
reasonCode |
|
Último |
|
startedAt |
|
Más temprano |
Típicamente, la marca de tiempo del primer evento |
terminal |
|
Último |
Consulta el estado del flujo de procesos a partir de las definiciones del flujo de procesos para determinar si el cambio de estado es terminal. |
fallo |
|
Último |
Consulta el estado del flujo de proceso a partir de las definiciones del flujo de proceso para determinar si el cambio de estado es un fallo. |
Asignaciones Predeterminadas
| Campo de Resumen | Fuentes |
|---|---|
fecha YHora De Aceptación |
Transacción De Transferencia De Crédito {pacs.008.001.08}@[/accptncDtTm] |
batchBooking |
Instrucción De Pago {pain.001.001.09}@[/btchBookg] |
cancellationId |
Transacción De Pago {camt.056.001.08}@[/cxlId] |
chargeAmount |
Transacción De Pago {pacs.004.001.09}@[/chrgsInf/0/amt/value] |
cargoMontoMoneda |
Transacción De Pago {pacs.004.001.09}@[/chrgsInf/0/amt/ccy] |
controlSum |
Iniciación De Transferencia De Crédito Al Cliente {pain.001.001.09}@[/grpHdr/ctrlSum] Instrucción De Pago {pain.001.001.09}@[/ctrlSum] |
cantidad De Transacción Convertida |
Fx@[/convertedCurrencyAndAmount/value] |
convertedTransactionAmountCurrency |
Fx@[/convertedCurrencyAndAmount/ccy] |
cuenta De Crédito |
Notificación De Cuenta {camt.054.001.10}@[/acct/id/othr/id o /acct/prxy/id o /acct/id/iban] cuando @[/ntry/0/cdtDbtInd] == "CRDT" |
monto De Crédito |
Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/value] cuando @[/ntry/0/cdtDbtInd] == "CRDT" |
creditAmountCurrency |
Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/ccy] cuando @[/ntry/0/cdtDbtInd] == "CRDT" |
cuentaAcreedora |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/cdtrAcct/id/iban o /cdtrAcct/id/othr/id] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/cdtrAcct/id/iban o /cdtrAcct/id/othr/id] Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/cdtrAcct/id/iban o /orgnlTxRef/cdtrAcct/id/othr/id] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/cdtrAcct/id/iban o /orgnlTxRef/cdtrAcct/id/othr/id] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/cdtrAcct/id/iban o /orgnlTxRef/cdtrAcct/id/othr/id] RequestToModifyPayment {camt.087.001.06}@[/mod/cdtrAcct/id/iban o /mod/cdtrAcct/id/othr/id] |
agente De Crédito BIC |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/cdtrAgt/finInstnId/bicfi] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/cdtrAgt/finInstnId/bicfi] Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi] |
creditorBIC |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/cdtr/id/orgId/anyBIC] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/cdtr/id/orgId/anyBIC] RequestToModifyPayment {camt.087.001.06}@[/mod/cdtr/id/orgId/anyBIC] |
creditorName |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/cdtr/nm] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/cdtr/nm] Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/cdtr/pty/nm] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/cdtr/pty/nm] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/cdtr/pty/nm] RequestToModifyPayment {camt.087.001.06}@[/mod/cdtr/nm] |
csm |
Csm@[/value] |
cuenta De Débito |
Notificación De Cuenta {camt.054.001.10}@[/acct/id/othr/id o /acct/prxy/id o /acct/id/iban] cuando @[/ntry/0/cdtDbtInd] == "DBIT" |
monto Débito |
Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/value] cuando @[/ntry/0/cdtDbtInd] == "DBIT" |
monto De Débito Moneda |
Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/ccy] cuando @[/ntry/0/cdtDbtInd] == "DBIT" |
cuentaDeudora |
Instrucción De Pago {pain.001.001.09}@[/dbtrAcct/id/iban o /dbtrAcct/id/othr/id] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/dbtrAcct/id/iban o /dbtrAcct/id/othr/id] Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/dbtrAcct/id/iban o /orgnlTxRef/dbtrAcct/id/othr/id] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/dbtrAcct/id/iban o /orgnlTxRef/dbtrAcct/id/othr/id] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/dbtrAcct/id/iban o /orgnlTxRef/dbtrAcct/id/othr/id] RequestToModifyPayment {camt.087.001.06}@[/mod/dbtrAcct/id/iban o /mod/dbtrAcct/id/othr/id] |
debtorAgentBIC |
Instrucción De Pago {pain.001.001.09}@[/dbtrAgt/finInstnId/bicfi] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/dbtrAgt/finInstnId/bicfi] Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi] |
deudorBIC |
Instrucción De Pago {pain.001.001.09}@[/dbtr/id/orgId/anyBIC] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/dbtr/id/orgId/anyBIC] RequestToModifyPayment {camt.087.001.06}@[/mod/dbtr/id/orgId/anyBIC] |
debtorName |
Instrucción De Pago {pain.001.001.09}@[/dbtr/nm o /dbtrAcct/nm] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/dbtr/nm] Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/dbtr/pty/nm] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/dbtr/pty/nm] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/dbtr/pty/nm] RequestToModifyPayment {camt.087.001.06}@[/mod/dbtr/nm] |
exchangeRate |
Fx@[/exchangeRate] |
initiatingPartyName |
Iniciación De Transferencia De Crédito Al Cliente {pain.001.001.09}@[/grpHdr/initgPty/nm] |
instruidoAgente |
FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/instdAgt/finInstnId/bicfi] Devolución De Pago {pacs.004.001.09}@[/grpHdr/instdAgt/finInstnId/bicfi] Transacción De Pago {pacs.004.001.09}@[/instdAgt/finInstnId/bicfi] |
montoInstruido |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/amt/instdAmt/value] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/amt/instdAmt/value] Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/instdAmt/amt/value] RequestToModifyPayment {camt.087.001.06}@[/mod/amt/instdAmt/value] |
instrucción Cantidad Moneda |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/amt/instdAmt/ccy] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/amt/instdAmt/ccy] Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/instdAmt/amt/ccy] RequestToModifyPayment {camt.087.001.06}@[/mod/amt/instdAmt/ccy] |
instruidoParte |
Solicitud De Cancelación De Pago FITo FIP {camt.056.001.08}@[/assgnmt/assgne/agt/finInstnId/bicfi o /assgnmt/assgne/agt/finInstnId/lei o /assgnmt/assgne/agt/finInstnId/nm o /assgnmt/assgne/pty/id/orgId/cualquierBIC] |
instruyendoAgente |
FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/instgAgt/finInstnId/bicfi] Devolución De Pago {pacs.004.001.09}@[/grpHdr/instgAgt/finInstnId/bicfi] Transacción De Pago {pacs.004.001.09}@[/instgAgt/finInstnId/bicfi] |
instruyendoParte |
Solicitud De Cancelación De Pago FITo FIP {camt.056.001.08}@[/assgnmt/assgnr/agt/finInstnId/bicfi o /assgnmt/assgnr/agt/finInstnId/lei o /assgnmt/assgnr/agt/finInstnId/nm o /assgnmt/assgnr/pty/id/orgId/cualquierBIC] |
instructionId |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/pmtId/instrId] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/pmtId/instrId] RequestToModifyPayment {camt.087.001.06}@[/mod/instrId] |
fecha De Liquidación Interbancaria |
FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/intrBkSttlmDt] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/intrBkSttlmDt] Devolución De Pago {pacs.004.001.09}@[/grpHdr/intrBkSttlmDt] RequestToModifyPayment {camt.087.001.06}@[/mod/intrBkSttlmDt] |
journeyType |
JourneyType@[/value] |
messageId |
Iniciación De Transferencia De Crédito Al Cliente {pain.001.001.09}@[/grpHdr/msgId] FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/msgId] Devolución De Pago {pacs.004.001.09}@[/grpHdr/msgId] |
numberOfTransactions |
Iniciación De Transferencia De Crédito Al Cliente {pain.001.001.09}@[/grpHdr/nbOfTxs] Instrucción De Pago {pain.001.001.09}@[/nbOfTxs] FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/nbOfTxs] |
originalEndToEndId |
Transacción De Pago {pacs.004.001.09}@[/orgnlEndToEndId] Transacción De Pago {camt.029.001.09}@[/orgnlEndToEndId] Transacción De Pago {camt.056.001.08}@[/orgnlEndToEndId] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/initn/orgnlEndToEndId o /undrlyg/intrBk/orgnlEndToEndId] |
originalInstructionId |
Transacción De Pago {pacs.004.001.09}@[/orgnlInstrId] Transacción De Pago {camt.029.001.09}@[/orgnlInstrId] Transacción De Pago {camt.056.001.08}@[/orgnlInstrId] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/initn/orgnlInstrId o /undrlyg/intrBk/orgnlInstrId] |
fecha De Liquidación Interbancaria Original |
Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/intrBkSttlmDt o /orgnlIntrBkSttlmDt] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/intrBkSttlmDt o /orgnlIntrBkSttlmDt] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/intrBkSttlmDt o /orgnlIntrBkSttlmDt] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/intrBk/orgnlIntrBkSttlmDt] |
originalMessageId |
Devolución De Pago {pacs.004.001.09}@[/orgnlGrpInf/orgnlMsgId] Transacción De Pago {pacs.004.001.09}@[/orgnlMsgId o /orgnlGrpInf/orgnlMsgId] Transacción De Pago {camt.029.001.09}@[/orgnlMsgId or /orgnlGrpInf/orgnlMsgId] Transacción De Pago {camt.056.001.08}@[/orgnlMsgId o /orgnlGrpInf/orgnlMsgId] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/initn/orgnlGrpInf/orgnlMsgId o /undrlyg/intrBk/orgnlGrpInf/orgnlMsgId] |
monto Transacción Original |
Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/intrBkSttlmAmt/value o /orgnlIntrBkSttlmAmt/value] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/intrBkSttlmAmt/value o /orgnlIntrBkSttlmAmt/value] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/intrBkSttlmAmt/value o /orgnlIntrBkSttlmAmt/value] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/intrBk/orgnlIntrBkSttlmAmt/value] |
monto Original De La Transacción Moneda |
Transacción De Pago {pacs.004.001.09}@[/orgnlTxRef/intrBkSttlmAmt/ccy o /orgnlIntrBkSttlmAmt/ccy] Transacción De Pago {camt.029.001.09}@[/orgnlTxRef/intrBkSttlmAmt/ccy o /orgnlIntrBkSttlmAmt/ccy] Transacción De Pago {camt.056.001.08}@[/orgnlTxRef/intrBkSttlmAmt/ccy o /orgnlIntrBkSttlmAmt/ccy] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/intrBk/orgnlIntrBkSttlmAmt/ccy] |
originalTransactionId |
Transacción De Pago {pacs.004.001.09}@[/orgnlTxId] Transacción De Pago {camt.029.001.09}@[/orgnlTxId] Transacción De Pago {camt.056.001.08}@[/orgnlTxId] RequestToModifyPayment {camt.087.001.06}@[/undrlyg/intrBk/orgnlTxId] |
paymentInformationId |
Instrucción De Pago {pain.001.001.09}@[/pmtInfId] |
paymentType |
PaymentType@[/value] |
prioridad |
Priority@[/value] |
relatedUnitOfWork |
RelatedUnitOfWork@[/value] |
fecha De Ejecución Solicitada |
Instrucción De Pago {pain.001.001.09}@[/reqdExctnDt/dtTm or /reqdExctnDt/dt] RequestToModifyPayment {camt.087.001.06}@[/mod/reqdExctnDt/dtTm or /mod/reqdExctnDt/dt] |
returnId |
Transacción De Pago {pacs.004.001.09}@[/rtrId] |
cantidadDevuelta |
Transacción De Pago {pacs.004.001.09}@[/rtrdIntrBkSttlmAmt/value] |
returnedAmountCurrency |
Transacción De Pago {pacs.004.001.09}@[/rtrdIntrBkSttlmAmt/ccy] |
zonaHoraria |
TimeZone@[/value] |
totalAmount |
FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/ttlIntrBkSttlmAmt/value] |
totalAmountCurrency |
FITo FICustomer Credit Transfer {pacs.008.001.08}@[/grpHdr/ttlIntrBkSttlmAmt/ccy] |
monto De Transacción |
Transacción De Transferencia De Crédito {pacs.008.001.08}@[/intrBkSttlmAmt/value] Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/txAmt/amt/value] SolicitudParaModificarPago {camt.087.001.06}@[/mod/intrBkSttlmAmt/value] Fx@[/monedaOriginalYCantidad/valor] |
transactionAmountCurrency |
Transacción De Transferencia De Crédito {pacs.008.001.08}@[/intrBkSttlmAmt/ccy] Notificación De Cuenta {camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/txAmt/amt/ccy] RequestToModifyPayment {camt.087.001.06}@[/mod/intrBkSttlmAmt/ccy] Fx@[/originalCurrencyAndAmount/ccy] |
transactionId |
Transacción De Transferencia De Crédito {pacs.008.001.08}@[/pmtId/txId] RequestToModifyPayment {camt.087.001.06}@[/mod/txId] |
uetr |
Transacción De Transferencia De Crédito {pain.001.001.09}@[/pmtId/uetr] Transacción De Transferencia De Crédito {pacs.008.001.08}@[/pmtId/uetr] |
Personalización
Personalizando campos de resumen y mappings requiere construir su propio JAR que contenga el custom fields and mappings, y agrupando eso dentro de un desplegable ODS Ingestion aplicación para que forme parte del classpath.
Es posible que customise el predeterminado mappings para los campos de resumen existentes, y también, defina campos de resumen completamente nuevos, para los cuales deberá definir los suyos propios mappings.
Personalizando mappings para los campos de resumen existentes
Todo predeterminado mappings puede ser customised/overridden. Cuando un custom mapping apunta al mismo campo que un valor predeterminado mapping, el predeterminado mapping está deshabilitado. A custom mapping para un campo de resumen podría deshabilitar uno o más valores predeterminados mappings.
Dado el messageId el campo se mapea por defecto desde un pain.001 CustomerCreditTransferInitiation, a pacs.008 FIToFICustomerCreditTransfer, o un pacs.004 PaymentReturn - Si un custom mapping debían ser definidos con el mismo objetivo messageId campo, los tres predeterminados mappings sería deshabilitado.
Todo mappings, incluyendo custom mappings, se definen en el código, con una única fuente y un único campo de resumen de destino, y hay dos tipos de mappers.
- ::INFO
-
Cuando sea posible, prefiera el JSON mappers. Objeto directo mappers incurrir en un costo adicional de deserialización y requerir que el tipo de destino esté disponible en tiempo de ejecución. Objeto directo mapping es apropiado cuando el valor debe ser transformado antes de ser aplicado al resumen.
JSON Mapeos
JSON mapping es una forma flexible de mapear en campos de resumen desde MDS y PDS objetos recibidos por ODS. Con este enfoque, los tipos de concreto no necesitan estar disponibles en tiempo de ejecución.
El mappings haga uso de JsonPointer, que es un camino a un campo específico dentro de un JSON objeto, p. ej./grpHdr/msgId. La exploración de rutas es resistente a campos nulos/faltantes, y el campo dentro del JSON el objeto en la ruta designada se convierte/coerce al tipo de campo de resumen de destino cuando es necesario.
por ejemplo, una PaymentTransaction mapper espera un MDS objeto con el nombre de tipo "PaymentTransaction" y para que el objeto del mensaje original sea un pacs.004
new JsonMdsMapper<>("PaymentTransaction", MessageNameSpecs.pacs004(), summaryFields.chargeAmount(), from("/chrgsInf/0/amt/value"));
El mapping se aplicará a cualquier "PaymentTransaction" que se originó de un pacs.004.
Es posible mapear desde un PaymentTransaction que se originó a partir de cualquier objeto de mensaje, por ejemplo, un pacs.004, o un camt.056, o un camt.029
new JsonMdsMapper<>("PaymentTransaction", MessageNameSpecs.any(), summaryFields.originalTransactionId(), from("/orgnlTxId"));
Y lo mismo puede expresarse de manera más explícita.
new JsonMdsMapper<>("PaymentTransaction", pacs004().or(camt056()).or(camt029()), summaryFields.originalTransactionId(), from("/orgnlTxId"));
Los mapeos también pueden ser conscientes de la versión, utilizando la versión del objeto de mensaje original, por ejemplo, donde el objeto de mensaje original es un pacs.004.xxx. 09.
new JsonMdsMapper<>("PaymentTransaction", pacs004().atVersion("09"), summaryFields.interbankSettlementDate(), from("/grpHdr/intrBkSttlmDt"));
Asignaciones de Objetos Directos
Objeto directo mappings requerir que el tipo de objeto fuente esté disponible en tiempo de ejecución, y el objeto recibido se convierte al tipo requerido cuando el nombre del tipo coincide. Esto permite custom mappings para llamar directamente a los métodos en el objeto fuente.
e.g., a pacs.008 mapper espera la fuente FIToFICustomerCreditTransferV08, y tiene como objetivo el messageId campo de resumen.
new MdsMapper<>(FIToFICustomerCreditTransferV08.class, summaryFields.messageId(), it -> it.getGrpHdr().getMsgId());
Se adopta el mismo enfoque para custom PDS mappings, p. ej., un mapper que espera un cliente específico PDS tipo y objetivos el messageId campo de resumen.
new PdsMapper<>(ClientSpecificPdsType.class, "ClientSpecificPdsType", summaryFields.messageId(), it -> ClientSpecificPdsType::getValue);
Configurando Mapeos Personalizados
Para aplicar custom mappings debe proporcionar un JAR que contenga la autoconfiguración de Spring que proporcione un com.iconsolutions.ipf.ods.summary.SummaryMappingConfigurer bean.
Defina un configurador de resumen bean
package com.client.ods;
import com.iconsolutions.ipf.ods.summary.MapperRegistry;
import com.iconsolutions.ipf.ods.summary.SummaryFields;
import com.iconsolutions.ipf.ods.summary.SummaryMappingConfigurer;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
@AutoConfiguration
class CustomSummaryMappingConfig {
@Bean
SummaryMappingConfigurer customSummaryMappingConfigurer() {
return new SummaryMappingConfigurer() {
@Override
public void configure(final MapperRegistry registry, final SummaryFields summaryFields) {
registry
.register(new PdsMapper<>(CustomPdsType.class, "CustomPdsType", summaryFields.messageId(), CustomPdsType::getFieldA))
.register(new JsonPdsMapper<>("CustomPdsType", summaryFields.transactionId(), from("/fieldB")));
}
};
}
static final class CustomPdsType {
private String fieldA;
private String fieldB;
public String getFieldA() {
return fieldA;
}
public void setFieldA(final String fieldA) {
this.fieldA = fieldA;
}
public String getFieldB() {
return fieldB;
}
public void setFieldB(final String fieldB) {
this.fieldB = fieldB;
}
}
}
Cree el archivo de importaciones de autoconfiguración de Spring.
com.client.ods.CustomSummaryMappingConfig
Creando custom campos de resumen
Es posible definir sus propios campos de resumen y asignar a esos campos con su propio custom mappings. Su custom campos, y el mappings que apuntan a esos campos son visibles en el diseño del resumen.
Para crear custom campos de resumen, y custom mappings, debe proporcionar un JAR que contenga la autoconfiguración de Spring que proporcione un com.iconsolutions.ipf.ods.summary. CustomSummaryMappingConfigurer bean.
Defina un custom interfaz de campos de resumen
package com.client.ods;
import com.iconsolutions.ipf.ods.summary.CustomSummaryFields;
import com.iconsolutions.ipf.ods.summary.Searchable;
import com.iconsolutions.ipf.ods.summary.SummaryField;
/**
* This interface MUST directly extend CustomSummaryFields. You do not need to implement this interface.
*/
public interface MyCustomSummaryFields extends CustomSummaryFields {
/**
* Only fields of type StringField may be searchable. Annotating a field that is not of type StringField will
* result in an exception at startup.
*/
@Searchable
SummaryField.StringField someSearchableId();
SummaryField.StringField someName();
SummaryField.BooleanField someFlag();
SummaryField.LongField someLong();
SummaryField.IntegerField someCount();
SummaryField.BigDecimalField someAmount();
SummaryField.DateField someDate();
SummaryField.DateTimeField someTimestamp();
SummaryField.DateOrDateTimeField someDateOrDateTime();
}
Defina un custom resumen configurador bean
package com.client.ods;
import com.iconsolutions.ipf.ods.summary.MapperRegistry;
import com.iconsolutions.ipf.ods.summary.SummaryFields;
import com.iconsolutions.ipf.ods.summary.CustomSummaryMappingConfigurer;
import com.iconsolutions.ipf.ods.summary.TypeReference;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
@AutoConfiguration
class CustomSummaryMappingConfig {
private static final TypeReference<CustomPdsType> customPdsType = new TypeReference<>() {
};
private static final String CUSTOM_PDS_TYPE = "CustomPdsType";
/**
* Your instance of CustomSummaryMappingConfigurer MUST be typed to your CustomSummaryFields subtype, in this
* case it is MyCustomSummaryFields.
*/
@Bean
CustomSummaryMappingConfigurer<MyCustomSummaryFields> customSummaryMappingConfigurer() {
return new SummaryMappingConfigurer() {
@Override
public void configure(final MapperRegistry registry, final MyCustomSummaryFields summaryFields) {
registry
//This mapping targets an existing summary field
.register(new PdsMapper<>(customPdsType, CUSTOM_PDS_TYPE, summaryFields.messageId(), CustomPdsType::getFieldA))
//This mapping targets a custom summary field
.register(new JsonPdsMapper<>(CUSTOM_PDS_TYPE, summaryFields.someSearchableId(), from("/fieldB")));
}
@Override
public Class<MyCustomSummaryFields> getSummaryFieldsType() {
return MyCustomSummaryFields.class;
}
};
}
static final class CustomPdsType {
private String fieldA;
private String fieldB;
public String getFieldA() {
return fieldA;
}
public void setFieldA(final String fieldA) {
this.fieldA = fieldA;
}
public String getFieldB() {
return fieldB;
}
public void setFieldB(final String fieldB) {
this.fieldB = fieldB;
}
}
}
Crear archivo de importaciones de autoconfiguración de Spring
com.client.ods.CustomSummaryMappingConfig
Los campos que usted define están limitados en su tipo, el conjunto actual de tipos posibles soportados es:
| Tipo | ¿Buscable? | Descripción |
|---|---|---|
|
Sí |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
El tipo subyacente es |
|
No |
Un tipo que representa una fecha y hora. Se presentan métodos de fábrica para ayudar a crear instancias de |
|
No |
Un tipo que puede representar ya sea una fecha, o una fecha y hora. Se presentan métodos de fábrica para ayudar a crear instancias de |
Los campos de resumen personalizables que se pueden buscar deben ser indexados. En ODS los campos buscables en un resumen se poblarán bajo searchFields, p. ej.searchFields.someId.
|
Desplegando customisations
Personalizado ODS Ingestion Docker Imagen
Un método de customising ODS es construir un custom ODS Ingestion imagen de docker, utilizando el predeterminado ODS Ingestion imagen de docker como base. Se pueden incluir JARs adicionales en este custom imagen, que contiene el customised resumen mappings.
Un ejemplo de tal customisation se puede ver en el ODS repositorio. Para aplicar custom mappings debe proporcionar un JAR que contenga la autoconfiguración de Spring que proporcione SummaryMappingConfigurer y CustomSUmmaryMappingConfigurer beans
ODSno suele ser consciente de custom PDS tipos, pero en esta configuración, su proyecto puede incluir el custom tipos en el código, o a través de dependencias externas, y estarán disponibles en el classpath.
Personalizado PDS los tipos son recibidos por ODS como un mapa de propiedades. El tipo es en realidad Map<String, Object>. ODS convertirá este mapa al tipo deseado y invocará el custom mapper con el valor convertido.
| Cualquier dependencia de terceros requerida por su custom mapping JAR también deberá ser incluido en el custom imagen de docker. Dependencias como Spring/Spring Boot/Lombok etc. no necesitarán ser proporcionados, ya que ya son proporcionados por ODS. |
| Evite tener más dependencias para su custom mappers que es absolutamente necesario. Esto ayudará a evitar problemas de classpath. |
El conjunto de dependencias recomendado que su custom mapper JAR debe depender de es
<dependencies>
<dependency>
<groupId>com.iconsolutions.ipf.ods</groupId>
<artifactId>ods-summary-mapping-api</artifactId>
<version>${ods.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>${spring-boot.version}</version>
</dependency>
<!-- Optional: Only required if customising ISO20022 MDS Mappings -->
<dependency>
<groupId>com.iconsolutions.iso20022.model</groupId>
<artifactId>message-model-types</artifactId>
<version>${iso-model.version}</version>
</dependency>
</dependencies>
Estos no necesitarán ser añadidos a su custom imagen de docker, ya estarán presentes.
Además de estos, puede que necesite depender de otras bibliotecas que proporcionen su objetivo.custom PDS tipos. Estos deberán ser incluidos en el custom imagen de docker junto con su custom mappers.
| Si su custom PDS Los tipos son pequeños, puede optar por duplicarlos junto a su custom mappers, en lugar de incorporar otra dependencia. ODS podrá convertir en los tipos requeridos antes de invocar su mappers. |
Diseño del Resumen
El diseño del resumen, es decir, el conjunto de valores predeterminados y custom campos de resumen, el custom MDS y PDS mappings, cualquier predeterminado deshabilitado mappings, y el conjunto final general de mappings, está disponible en tiempo de ejecución.
Registro
El diseño del resumen se registra al iniciar.
Ejemplo de diseño de resumen de registro
[ForkJoinPool-1-worker-1] INFO com.iconsolutions.ipf.ods.summary. SummaryLayoutLogger -
-------------------------------------------------------------------------------------
Diseño del Resumen
-------------------------------------------------------------------------------------
---------------------------------------------------------------------------------
Mapas MDS deshabilitados
---------------------------------------------------------------------------------
Campo objetivo | Tipo de Fuente
---------------------------------------------------------------------------------
messageId | CustomerCreditTransferInitiation{pain. 001. 001. 09}@[/grpHdr/msgId]
FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/msgId]
PaymentReturn{pacs. 004. 001. 09}@[/grpHdr/msgId]
transactionId | CreditTransferTransaction{pacs. 008. 001. 08}@[/pmtId/txId]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/txId]
---------------------------------------------------------------------------------
---------------------------------------------------------------------------------
Mapas PDS Personalizados
---------------------------------------------------------------------------------
Campo objetivo | Tipo de Fuente
---------------------------------------------------------------------------------
messageId | SomeCustomPds@[/some/field/in/custom/pds/messageId]
transactionId | SomeCustomPds@[/some/field/in/custom/pds/transactionId]
---------------------------------------------------------------------------------
---------------------------------------------------------------------------------
Mapas Finales
---------------------------------------------------------------------------------
Campo de destino | Tipo de Fuente
---------------------------------------------------------------------------------
fecha YHora De Aceptación | CreditTransferTransaction{pacs. 008. 001. 08}@[/accptncDtTm]
batchBooking | PaymentInstruction{pain. 001. 001. 09}@[/btchBookg]
cancellationId | PaymentTransaction{camt. 056. 001. 08}@[/cxlId]
montoDeCarga | PaymentTransaction{pacs. 004. 001. 09}@[/chrgsInf/0/amt/value]
cargoMontoMoneda | PaymentTransaction{pacs. 004. 001. 09}@[/chrgsInf/0/amt/ccy]
controlSum | CustomerCreditTransferInitiation{pain. 001. 001. 09}@[/grpHdr/ctrlSum]
PaymentInstruction{pain. 001. 001. 09}@[/ctrlSum]
cantidad De Transacción Convertida | Fx@[/convertedCurrencyAndAmount/value]
convertedTransactionAmountCurrency | Fx@[/convertedCurrencyAndAmount/ccy]
cuenta De Crédito | AccountNotification{camt. 054. 001. 10}@[/acct/id/othr/id o /acct/prxy/id o /acct/id/iban] cuando @[/ntry/0/cdtDbtInd] == "CRDT"
monto De Crédito | AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/value] cuando @[/ntry/0/cdtDbtInd] == "CRDT"
cantidadMonetariaCredito | AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/ccy] cuando @[/ntry/0/cdtDbtInd] == "CRDT"
cuentaAcreedora | CreditTransferTransaction{pain. 001. 001. 09}@[/cdtrAcct/id/iban o /cdtrAcct/id/othr/id]
CreditTransferTransaction{pacs. 008. 001. 08}@[/cdtrAcct/id/iban o /cdtrAcct/id/othr/id]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/cdtrAcct/id/iban o /orgnlTxRef/cdtrAcct/id/othr/id]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/cdtrAcct/id/iban o /orgnlTxRef/cdtrAcct/id/othr/id]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/cdtrAcct/id/iban o /orgnlTxRef/cdtrAcct/id/othr/id]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/cdtrAcct/id/iban o /mod/cdtrAcct/id/othr/id]
agente De Crédito BIC | CreditTransferTransaction{pain. 001. 001. 09}@[/cdtrAgt/finInstnId/bicfi]
CreditTransferTransaction{pacs. 008. 001. 08}@[/cdtrAgt/finInstnId/bicfi]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi]
creditorBIC | CreditTransferTransaction{pain. 001. 001. 09}@[/cdtr/id/orgId/anyBIC]
CreditTransferTransaction{pacs. 008. 001. 08}@[/cdtr/id/orgId/anyBIC]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/cdtr/id/orgId/anyBIC]
nombreDelAcreedor | Transacción De Transferencia De Crédito{pain. 001. 001. 09}@[/cdtr/nm]
CreditTransferTransaction{pacs. 008. 001. 08}@[/cdtr/nm]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/cdtr/pty/nm]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/cdtr/pty/nm]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/cdtr/pty/nm]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/cdtr/nm]
csm | Csm@[/value]
cuenta De Débito | AccountNotification{camt. 054. 001. 10}@[/acct/id/othr/id o /acct/prxy/id o /acct/id/iban] cuando @[/ntry/0/cdtDbtInd] == "DBIT"
monto Débito | AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/value] cuando @[/ntry/0/cdtDbtInd] == "DBIT"
monto De Débito Moneda | AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/ccy] cuando @[/ntry/0/cdtDbtInd] == "DBIT"
cuentaDeudora | PaymentInstruction{pain. 001. 001. 09}@[/dbtrAcct/id/iban o /dbtrAcct/id/othr/id]
CreditTransferTransaction{pacs. 008. 001. 08}@[/dbtrAcct/id/iban o /dbtrAcct/id/othr/id]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/dbtrAcct/id/iban o /orgnlTxRef/dbtrAcct/id/othr/id]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/dbtrAcct/id/iban o /orgnlTxRef/dbtrAcct/id/othr/id]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/dbtrAcct/id/iban o /orgnlTxRef/dbtrAcct/id/othr/id]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/dbtrAcct/id/iban o /mod/dbtrAcct/id/othr/id]
agenteDeudorBIC | PaymentInstruction{pain. 001. 001. 09}@[/dbtrAgt/finInstnId/bicfi]
CreditTransferTransaction{pacs. 008. 001. 08}@[/dbtrAgt/finInstnId/bicfi]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi]
debtorBIC | PaymentInstruction{pain. 001. 001. 09}@[/dbtr/id/orgId/anyBIC]
CreditTransferTransaction{pacs. 008. 001. 08}@[/dbtr/id/orgId/anyBIC]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/dbtr/id/orgId/anyBIC]
nombreDelDeudor | PaymentInstruction{pain. 001. 001. 09}@[/dbtr/nm o /dbtrAcct/nm]
CreditTransferTransaction{pacs. 008. 001. 08}@[/dbtr/nm]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/dbtr/pty/nm]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/dbtr/pty/nm]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/dbtr/pty/nm]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/dbtr/nm]
tipoDeCambio | Fx@[/tipoDeCambio]
initiatingPartyName | CustomerCreditTransferInitiation{pain. 001. 001. 09}@[/grpHdr/initgPty/nm]
instruidoAgente | FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/instdAgt/finInstnId/bicfi]
PaymentReturn{pacs. 004. 001. 09}@[/grpHdr/instdAgt/finInstnId/bicfi]
PaymentTransaction{pacs. 004. 001. 09}@[/instdAgt/finInstnId/bicfi]
montoInstruido | CreditTransferTransaction{pain. 001. 001. 09}@[/amt/instdAmt/value]
CreditTransferTransaction{pacs. 008. 001. 08}@[/amt/instdAmt/value]
AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/instdAmt/amt/value]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/amt/instdAmt/value]
montoInstruidoMoneda | CreditTransferTransaction{pain. 001. 001. 09}@[/amt/instdAmt/ccy]
CreditTransferTransaction{pacs. 008. 001. 08}@[/amt/instdAmt/ccy]
AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/instdAmt/amt/ccy]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/amt/instdAmt/ccy]
parteInstruida | FITo FIPayment Cancellation Request{camt. 056. 001. 08}@[/assgnmt/assgne/agt/finInstnId/bicfi o /assgnmt/assgne/agt/finInstnId/lei o /assgnmt/assgne/agt/finInstnId/nm o /assgnmt/assgne/pty/id/orgId/cualquierBIC]
instruyendoAgente | FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/instgAgt/finInstnId/bicfi]
PaymentReturn{pacs. 004. 001. 09}@[/grpHdr/instgAgt/finInstnId/bicfi]
PaymentTransaction{pacs. 004. 001. 09}@[/instgAgt/finInstnId/bicfi]
instruyendoParte | FITo FIPayment Cancellation Request{camt. 056. 001. 08}@[/assgnmt/assgnr/agt/finInstnId/bicfi o /assgnmt/assgnr/agt/finInstnId/lei o /assgnmt/assgnr/agt/finInstnId/nm o /assgnmt/assgnr/pty/id/orgId/cualquierBIC]
instructionId | CreditTransferTransaction{pain. 001. 001. 09}@[/pmtId/instrId]
CreditTransferTransaction{pacs. 008. 001. 08}@[/pmtId/instrId]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/instrId]
fecha De Liquidación Interbancaria | FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/intrBkSttlmDt]
CreditTransferTransaction{pacs. 008. 001. 08}@[/intrBkSttlmDt]
PaymentReturn{pacs. 004. 001. 09}@[/grpHdr/intrBkSttlmDt]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/intrBkSttlmDt]
tipoDeViaje | JourneyType@[/valor]
messageId | SomeCustomPds@[/some/field/in/custom/pds/messageId]
número De Transacciones | CustomerCreditTransferInitiation{pain. 001. 001. 09}@[/grpHdr/nbOfTxs]
PaymentInstruction{pain. 001. 001. 09}@[/nbOfTxs]
FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/nbOfTxs]
originalEndToEndId | PaymentTransaction{pacs. 004. 001. 09}@[/orgnlEndToEndId]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlEndToEndId]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlEndToEndId]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/initn/orgnlEndToEndId o /undrlyg/intrBk/orgnlEndToEndId]
originalInstructionId | PaymentTransaction{pacs. 004. 001. 09}@[/orgnlInstrId]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlInstrId]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlInstrId]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/initn/orgnlInstrId o /undrlyg/intrBk/orgnlInstrId]
fecha De Liquidación Interbancaria Original | PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/intrBkSttlmDt o /orgnlIntrBkSttlmDt]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/intrBkSttlmDt o /orgnlIntrBkSttlmDt]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/intrBkSttlmDt o /orgnlIntrBkSttlmDt]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/intrBk/orgnlIntrBkSttlmDt]
originalMessageId | PaymentReturn{pacs. 004. 001. 09}@[/orgnlGrpInf/orgnlMsgId]
PaymentTransaction{pacs. 004. 001. 09}@[/orgnlMsgId o /orgnlGrpInf/orgnlMsgId]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlMsgId o /orgnlGrpInf/orgnlMsgId]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlMsgId o /orgnlGrpInf/orgnlMsgId]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/initn/orgnlGrpInf/orgnlMsgId o /undrlyg/intrBk/orgnlGrpInf/orgnlMsgId]
monto Transacción Original | PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/intrBkSttlmAmt/value o /orgnlIntrBkSttlmAmt/value]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/intrBkSttlmAmt/value o /orgnlIntrBkSttlmAmt/value]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/intrBkSttlmAmt/value o /orgnlIntrBkSttlmAmt/value]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/intrBk/orgnlIntrBkSttlmAmt/value]
monto Original De La Transacción Moneda | PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxRef/intrBkSttlmAmt/ccy o /orgnlIntrBkSttlmAmt/ccy]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxRef/intrBkSttlmAmt/ccy o /orgnlIntrBkSttlmAmt/ccy]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxRef/intrBkSttlmAmt/ccy o /orgnlIntrBkSttlmAmt/ccy]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/intrBk/orgnlIntrBkSttlmAmt/ccy]
originalTransactionId | PaymentTransaction{pacs. 004. 001. 09}@[/orgnlTxId]
PaymentTransaction{camt. 029. 001. 09}@[/orgnlTxId]
PaymentTransaction{camt. 056. 001. 08}@[/orgnlTxId]
RequestToModifyPayment{camt. 087. 001. 06}@[/undrlyg/intrBk/orgnlTxId]
paymentInformationId | PaymentInstruction{pain. 001. 001. 09}@[/pmtInfId]
tipoDePago | TipoDePago@[/valor]
prioridad | Prioridad@[/valor]
unidadDeTrabajoRelacionada | RelatedUnitOfWork@[/value]
fecha De Ejecución Solicitada | PaymentInstruction{pain. 001. 001. 09}@[/reqdExctnDt/dtTm o /reqdExctnDt/dt]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/reqdExctnDt/dtTm o /mod/reqdExctnDt/dt]
returnId | PaymentTransaction{pacs. 004. 001. 09}@[/rtrId]
cantidadDevuelta | PaymentTransaction{pacs. 004. 001. 09}@[/rtrdIntrBkSttlmAmt/value]
cantidadDevueltaMoneda | PaymentTransaction{pacs. 004. 001. 09}@[/rtrdIntrBkSttlmAmt/ccy]
zonaHoraria | ZonaHoraria@[/valor]
totalAmount | FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/ttlIntrBkSttlmAmt/value]
totalAmountCurrency | FITo FICustomer Credit Transfer{pacs. 008. 001. 08}@[/grpHdr/ttlIntrBkSttlmAmt/ccy]
monto De Transacción | CreditTransferTransaction{pacs. 008. 001. 08}@[/intrBkSttlmAmt/value]
AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/txAmt/amt/value]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/intrBkSttlmAmt/value]
Fx@[/monedaOriginalYCantidad/valor]
moneda Del Monto De Transacción | CreditTransferTransaction{pacs. 008. 001. 08}@[/intrBkSttlmAmt/ccy]
AccountNotification{camt. 054. 001. 10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/txAmt/amt/ccy]
RequestToModifyPayment{camt. 087. 001. 06}@[/mod/intrBkSttlmAmt/ccy]
Fx@[/originalCurrencyAndAmount/ccy]
transactionId | SomeCustomPds@[/some/field/in/custom/pds/transactionId]
uetr | CreditTransferTransaction{pain. 001. 001. 09}@[/pmtId/uetr]
CreditTransferTransaction{pacs. 008. 001. 08}@[/pmtId/uetr]
---------------------------------------------------------------------------------
Punto de Actuador
El diseño del resumen está disponible como un custom Spring Boot Punto final del actuador en /actuator/summary-layout. No está habilitado por defecto.
Configurar management.endpoints.web.exposure.include incluir summary-layout, para habilitar el punto final de diseño de resumen, o con * para habilitar todos los puntos finales del actuador.
e.g.management.endpoints.web.exposure.include = [health, info, prometheus, summary-layout].
Ejemplo de respuesta de diseño de resumen
{
"finalMappings": {
"debtorAccount": [
"PaymentInstruction{pain.001.001.09}@[/dbtrAcct/id/iban or /dbtrAcct/id/othr/id]",
"CreditTransferTransaction{pacs.008.001.08}@[/dbtrAcct/id/iban or /dbtrAcct/id/othr/id]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/dbtrAcct/id/iban or /orgnlTxRef/dbtrAcct/id/othr/id]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/dbtrAcct/id/iban or /orgnlTxRef/dbtrAcct/id/othr/id]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/dbtrAcct/id/iban or /orgnlTxRef/dbtrAcct/id/othr/id]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/dbtrAcct/id/iban or /mod/dbtrAcct/id/othr/id]"
],
"creditorName": [
"CreditTransferTransaction{pain.001.001.09}@[/cdtr/nm]",
"CreditTransferTransaction{pacs.008.001.08}@[/cdtr/nm]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/cdtr/pty/nm]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/cdtr/pty/nm]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/cdtr/pty/nm]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/cdtr/nm]"
],
"chargeAmountCurrency": [
"PaymentTransaction{pacs.004.001.09}@[/chrgsInf/0/amt/ccy]"
],
"instructedAmountCurrency": [
"CreditTransferTransaction{pain.001.001.09}@[/amt/instdAmt/ccy]",
"CreditTransferTransaction{pacs.008.001.08}@[/amt/instdAmt/ccy]",
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/instdAmt/amt/ccy]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/amt/instdAmt/ccy]"
],
"instructingAgent": [
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/instgAgt/finInstnId/bicfi]",
"PaymentReturn{pacs.004.001.09}@[/grpHdr/instgAgt/finInstnId/bicfi]",
"PaymentTransaction{pacs.004.001.09}@[/instgAgt/finInstnId/bicfi]"
],
"creditorBIC": [
"CreditTransferTransaction{pain.001.001.09}@[/cdtr/id/orgId/anyBIC]",
"CreditTransferTransaction{pacs.008.001.08}@[/cdtr/id/orgId/anyBIC]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/cdtr/id/orgId/anyBIC]"
],
"instructedParty": [
"FIToFIPaymentCancellationRequest{camt.056.001.08}@[/assgnmt/assgne/agt/finInstnId/bicfi or /assgnmt/assgne/agt/finInstnId/lei or /assgnmt/assgne/agt/finInstnId/nm or /assgnmt/assgne/pty/id/orgId/anyBIC]"
],
"debtorBIC": [
"PaymentInstruction{pain.001.001.09}@[/dbtr/id/orgId/anyBIC]",
"CreditTransferTransaction{pacs.008.001.08}@[/dbtr/id/orgId/anyBIC]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/dbtr/id/orgId/anyBIC]"
],
"relatedUnitOfWork": [
"RelatedUnitOfWork@[/value]"
],
"originalTransactionId": [
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxId]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxId]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxId]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/intrBk/orgnlTxId]"
],
"exchangeRate": [
"Fx@[/exchangeRate]"
],
"returnedAmountCurrency": [
"PaymentTransaction{pacs.004.001.09}@[/rtrdIntrBkSttlmAmt/ccy]"
],
"instructingParty": [
"FIToFIPaymentCancellationRequest{camt.056.001.08}@[/assgnmt/assgnr/agt/finInstnId/bicfi or /assgnmt/assgnr/agt/finInstnId/lei or /assgnmt/assgnr/agt/finInstnId/nm or /assgnmt/assgnr/pty/id/orgId/anyBIC]"
],
"instructedAmount": [
"CreditTransferTransaction{pain.001.001.09}@[/amt/instdAmt/value]",
"CreditTransferTransaction{pacs.008.001.08}@[/amt/instdAmt/value]",
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/instdAmt/amt/value]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/amt/instdAmt/value]"
],
"acceptanceDateTime": [
"CreditTransferTransaction{pacs.008.001.08}@[/accptncDtTm]"
],
"originalMessageId": [
"PaymentReturn{pacs.004.001.09}@[/orgnlGrpInf/orgnlMsgId]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlMsgId or /orgnlGrpInf/orgnlMsgId]",
"PaymentTransaction{camt.029.001.09}@[/orgnlMsgId or /orgnlGrpInf/orgnlMsgId]",
"PaymentTransaction{camt.056.001.08}@[/orgnlMsgId or /orgnlGrpInf/orgnlMsgId]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/initn/orgnlGrpInf/orgnlMsgId or /undrlyg/intrBk/orgnlGrpInf/orgnlMsgId]"
],
"convertedTransactionAmountCurrency": [
"Fx@[/convertedCurrencyAndAmount/ccy]"
],
"creditAmountCurrency": [
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/ccy] when @[/ntry/0/cdtDbtInd] == \"CRDT\""
],
"creditAccount": [
"AccountNotification{camt.054.001.10}@[/acct/id/othr/id or /acct/prxy/id or /acct/id/iban] when @[/ntry/0/cdtDbtInd] == \"CRDT\""
],
"paymentInformationId": [
"PaymentInstruction{pain.001.001.09}@[/pmtInfId]"
],
"timeZone": [
"TimeZone@[/value]"
],
"messageId": [
"SomeCustomPds@[/some/field/in/custom/pds/messageId]"
],
"debitAmount": [
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/value] when @[/ntry/0/cdtDbtInd] == \"DBIT\""
],
"priority": [
"Priority@[/value]"
],
"transactionId": [
"SomeCustomPds@[/some/field/in/custom/pds/transactionId]"
],
"totalAmount": [
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/ttlIntrBkSttlmAmt/value]"
],
"journeyType": [
"JourneyType@[/value]"
],
"creditorAccount": [
"CreditTransferTransaction{pain.001.001.09}@[/cdtrAcct/id/iban or /cdtrAcct/id/othr/id]",
"CreditTransferTransaction{pacs.008.001.08}@[/cdtrAcct/id/iban or /cdtrAcct/id/othr/id]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/cdtrAcct/id/iban or /orgnlTxRef/cdtrAcct/id/othr/id]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/cdtrAcct/id/iban or /orgnlTxRef/cdtrAcct/id/othr/id]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/cdtrAcct/id/iban or /orgnlTxRef/cdtrAcct/id/othr/id]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/cdtrAcct/id/iban or /mod/cdtrAcct/id/othr/id]"
],
"uetr": [
"CreditTransferTransaction{pain.001.001.09}@[/pmtId/uetr]",
"CreditTransferTransaction{pacs.008.001.08}@[/pmtId/uetr]"
],
"originalInterbankSettlementDate": [
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/intrBkSttlmDt or /orgnlIntrBkSttlmDt]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/intrBkSttlmDt or /orgnlIntrBkSttlmDt]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/intrBkSttlmDt or /orgnlIntrBkSttlmDt]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/intrBk/orgnlIntrBkSttlmDt]"
],
"instructionId": [
"CreditTransferTransaction{pain.001.001.09}@[/pmtId/instrId]",
"CreditTransferTransaction{pacs.008.001.08}@[/pmtId/instrId]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/instrId]"
],
"creditAmount": [
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/value] when @[/ntry/0/cdtDbtInd] == \"CRDT\""
],
"debtorAgentBIC": [
"PaymentInstruction{pain.001.001.09}@[/dbtrAgt/finInstnId/bicfi]",
"CreditTransferTransaction{pacs.008.001.08}@[/dbtrAgt/finInstnId/bicfi]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/dbtrAgt/finInstnId/bicfi]"
],
"interbankSettlementDate": [
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/intrBkSttlmDt]",
"CreditTransferTransaction{pacs.008.001.08}@[/intrBkSttlmDt]",
"PaymentReturn{pacs.004.001.09}@[/grpHdr/intrBkSttlmDt]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/intrBkSttlmDt]"
],
"debitAccount": [
"AccountNotification{camt.054.001.10}@[/acct/id/othr/id or /acct/prxy/id or /acct/id/iban] when @[/ntry/0/cdtDbtInd] == \"DBIT\""
],
"batchBooking": [
"PaymentInstruction{pain.001.001.09}@[/btchBookg]"
],
"cancellationId": [
"PaymentTransaction{camt.056.001.08}@[/cxlId]"
],
"totalAmountCurrency": [
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/ttlIntrBkSttlmAmt/ccy]"
],
"numberOfTransactions": [
"CustomerCreditTransferInitiation{pain.001.001.09}@[/grpHdr/nbOfTxs]",
"PaymentInstruction{pain.001.001.09}@[/nbOfTxs]",
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/nbOfTxs]"
],
"paymentType": [
"PaymentType@[/value]"
],
"convertedTransactionAmount": [
"Fx@[/convertedCurrencyAndAmount/value]"
],
"controlSum": [
"CustomerCreditTransferInitiation{pain.001.001.09}@[/grpHdr/ctrlSum]",
"PaymentInstruction{pain.001.001.09}@[/ctrlSum]"
],
"debitAmountCurrency": [
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/anncdPstngAmt/amt/ccy] when @[/ntry/0/cdtDbtInd] == \"DBIT\""
],
"transactionAmount": [
"CreditTransferTransaction{pacs.008.001.08}@[/intrBkSttlmAmt/value]",
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/txAmt/amt/value]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/intrBkSttlmAmt/value]",
"Fx@[/originalCurrencyAndAmount/value]"
],
"returnId": [
"PaymentTransaction{pacs.004.001.09}@[/rtrId]"
],
"chargeAmount": [
"PaymentTransaction{pacs.004.001.09}@[/chrgsInf/0/amt/value]"
],
"originalEndToEndId": [
"PaymentTransaction{pacs.004.001.09}@[/orgnlEndToEndId]",
"PaymentTransaction{camt.029.001.09}@[/orgnlEndToEndId]",
"PaymentTransaction{camt.056.001.08}@[/orgnlEndToEndId]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/initn/orgnlEndToEndId or /undrlyg/intrBk/orgnlEndToEndId]"
],
"instructedAgent": [
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/instdAgt/finInstnId/bicfi]",
"PaymentReturn{pacs.004.001.09}@[/grpHdr/instdAgt/finInstnId/bicfi]",
"PaymentTransaction{pacs.004.001.09}@[/instdAgt/finInstnId/bicfi]"
],
"debtorName": [
"PaymentInstruction{pain.001.001.09}@[/dbtr/nm or /dbtrAcct/nm]",
"CreditTransferTransaction{pacs.008.001.08}@[/dbtr/nm]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/dbtr/pty/nm]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/dbtr/pty/nm]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/dbtr/pty/nm]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/dbtr/nm]"
],
"transactionAmountCurrency": [
"CreditTransferTransaction{pacs.008.001.08}@[/intrBkSttlmAmt/ccy]",
"AccountNotification{camt.054.001.10}@[/ntry/0/ntryDtls/0/txDtls/0/amtDtls/txAmt/amt/ccy]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/intrBkSttlmAmt/ccy]",
"Fx@[/originalCurrencyAndAmount/ccy]"
],
"originalInstructionId": [
"PaymentTransaction{pacs.004.001.09}@[/orgnlInstrId]",
"PaymentTransaction{camt.029.001.09}@[/orgnlInstrId]",
"PaymentTransaction{camt.056.001.08}@[/orgnlInstrId]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/initn/orgnlInstrId or /undrlyg/intrBk/orgnlInstrId]"
],
"originalTransactionAmountCurrency": [
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/intrBkSttlmAmt/ccy or /orgnlIntrBkSttlmAmt/ccy]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/intrBkSttlmAmt/ccy or /orgnlIntrBkSttlmAmt/ccy]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/intrBkSttlmAmt/ccy or /orgnlIntrBkSttlmAmt/ccy]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/intrBk/orgnlIntrBkSttlmAmt/ccy]"
],
"requestedExecutionDate": [
"PaymentInstruction{pain.001.001.09}@[/reqdExctnDt/dtTm or /reqdExctnDt/dt]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/reqdExctnDt/dtTm or /mod/reqdExctnDt/dt]"
],
"originalTransactionAmount": [
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/intrBkSttlmAmt/value or /orgnlIntrBkSttlmAmt/value]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/intrBkSttlmAmt/value or /orgnlIntrBkSttlmAmt/value]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/intrBkSttlmAmt/value or /orgnlIntrBkSttlmAmt/value]",
"RequestToModifyPayment{camt.087.001.06}@[/undrlyg/intrBk/orgnlIntrBkSttlmAmt/value]"
],
"creditorAgentBIC": [
"CreditTransferTransaction{pain.001.001.09}@[/cdtrAgt/finInstnId/bicfi]",
"CreditTransferTransaction{pacs.008.001.08}@[/cdtrAgt/finInstnId/bicfi]",
"PaymentTransaction{pacs.004.001.09}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi]",
"PaymentTransaction{camt.029.001.09}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi]",
"PaymentTransaction{camt.056.001.08}@[/orgnlTxRef/cdtrAgt/finInstnId/bicfi]"
],
"csm": [
"Csm@[/value]"
],
"returnedAmount": [
"PaymentTransaction{pacs.004.001.09}@[/rtrdIntrBkSttlmAmt/value]"
],
"initiatingPartyName": [
"CustomerCreditTransferInitiation{pain.001.001.09}@[/grpHdr/initgPty/nm]"
]
},
"customPdsMappings": {
"messageId": [
"SomeCustomPds@[/some/field/in/custom/pds/messageId]"
],
"transactionId": [
"SomeCustomPds@[/some/field/in/custom/pds/transactionId]"
]
},
"disabledMdsMappings": {
"messageId": [
"CustomerCreditTransferInitiation{pain.001.001.09}@[/grpHdr/msgId]",
"FIToFICustomerCreditTransfer{pacs.008.001.08}@[/grpHdr/msgId]",
"PaymentReturn{pacs.004.001.09}@[/grpHdr/msgId]"
],
"transactionId": [
"CreditTransferTransaction{pacs.008.001.08}@[/pmtId/txId]",
"RequestToModifyPayment{camt.087.001.06}@[/mod/txId]"
]
}
}