Manejo de Información de Pago
La información de pago está organizada en tres niveles jerárquicos distintos:
-
Detalles de Iniciación de Pago
-
Detalles de Instrucciones de Pago
-
Detalles de la transacción de pago
Cada uno de estos conceptos está representado por una interfaz dedicada dentro de la biblioteca del Procesador de Entradas de Pago:
package com.iconsolutions.ipf.core.releaser.shared;
import com.iconsolutions.ipf.core.shared.domain.context.ProcessingContext;
public interface PaymentInitiation<P> {
P getPayload();
ProcessingContext getProcessingContext();
}
package com.iconsolutions.ipf.core.releaser.shared;
import com.iconsolutions.ipf.core.shared.domain.context.ProcessingContext;
import com.iconsolutions.ipf.core.shared.domain.context.UnitOfWorkId;
public interface PaymentInstruction<P> {
P getPayload();
ProcessingContext getProcessingContext();
UnitOfWorkId getUnitOfWorkId();
UnitOfWorkId getInitiationUnitOfWorkId();
}
package com.iconsolutions.ipf.core.releaser.shared;
import com.iconsolutions.ipf.core.shared.domain.context.ProcessingContext;
import com.iconsolutions.ipf.core.shared.domain.context.UnitOfWorkId;
public interface PaymentTransaction<P> {
P getPayload();
ProcessingContext getProcessingContext();
UnitOfWorkId getInstructionUnitOfWorkId();
}
El Procesador de Entradas de Pago no dicta especificaciones Payload tipos.
Los usuarios de la biblioteca son responsables de implementar estas interfaces con su Payload deseado.message type s, asegurando la alineación con las representaciones de pago a lo largo de sus sistemas.
Implementación del Liberador Predeterminado
Mientras que el Procesador de Entradas de Pago no impone Iniciación, Instrucción o Transacción específicas message type s, proporciona implementaciones predeterminadas de las interfaces mencionadas. Estas implementaciones se basan en el Modelo de Pago ISO 20022, con las Cargas Útiles representadas por lo siguiente Java clases (donde XX representa una versión numérica):
-
CustomerCreditTransferInitiationVXX -
PaymentInstructionXX -
CreditTransferTransactionXX
Ajustes de Pago por Absorción
Los flujos de procesamiento almacenan los detalles de pago inicial que permanecen en estado pendiente.state hasta que sean seleccionados para el proceso de liberación y ejecutados. Durante este período pendiente, los pagos pueden ser cancelados o tener detalles específicos ajustados. En lugar de modificar los registros de pago originales, estos cambios se almacenan como entradas de actualización separadas que contienen los detalles del ajuste.
La Fuente de Datos de Pago es responsable de incorporar y agregar estos ajustes adicionales, fusionándolos con los detalles de la entrada de pago original para crear un registro de pago completo.
Para una explicación detallada del proceso de agregación de información de pagos, por favor consulte Agregando Información de Pago.