Amadis

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

Nexo Retail Module Library now supports two reconciliation types:

  • SaleReconciliation

  • AcquirerSynchronisation

Sale Reconciliation

A sale reconciliation is simply an exchange of totals between the POI terminal and the Sale terminal.

Example of request message:

<?xml version="1.0"?>
<SaleToPOIRequest>
    <MessageHeader ProtocolVersion="3.0" MessageClass="Service" MessageCategory="Reconciliation" MessageType="Request" ServiceID="617" SaleID="ArkosSales" POIID="PreCertificationAmadis1" />
    <ReconciliationRequest  ReconciliationType="SaleReconciliation"/>
</SaleToPOIRequest>


Acquirer Synchronisation

An acquirer synchronisation is a reconciliation and closure of the current period with synchronisation between POI terminal and Acquirers.

Example of request message:

<?xml version="1.0"?>
<SaleToPOIRequest>
    <MessageHeader ProtocolVersion="3.0" MessageClass="Service" MessageCategory="Reconciliation" MessageType="Request" ServiceID="617" SaleID="ArkosSales" POIID="PreCertificationAmadis1" />
    <ReconciliationRequest  ReconciliationType="AcquirerSynchronisation"/>
</SaleToPOIRequest>


Upon sending the request, you can refer in RetailHandler.java class in ArkosPay on how the events are managed for a reconciliation request.


A wrapper function has been made available in ASL to get the reconciliation type from the requests.

Depending on the request, we execute the following steps.

 RetailReconciliaitonFragment.java
if(request.wrap().getReconciliationType() == ReconciliationType.SaleReconciliation)
{
    MaintenanceStartAsync(doGetTotals);
}
else if(request.wrap().getReconciliationType() == ReconciliationType.AcquirerSynchronisation)
{

    navigate(R.id.toChooseReconciliationType);
}

Once the result is obtained, the data is sent back to the Nexo Retail Module to be constructed using SendReconciliationResponse() function.

  ReconciliationRequest request = (ReconciliationRequest) PaymentSystem.getRetailHandler().getEvent();
        TransactionTotals transactionTotals = new TransactionTotals(receiptData);
        List<TransactionTotal> getTotalList = transactionTotals.getTotalList();

        PaymentSystem.getRetailHandler().SendReconciliationResponse(ReconciliationResponseBody.reconciliationResponseBody(request.wrap().getReconciliationType(),getTotalList));

An example of a reconciliation response body can be found below. The SDK builds the response with all your schemes supported.

<?xml version="1.0" encoding="UTF-8"?>
<SaleToPOIResponse>
	<MessageHeader ServiceID="617" POIID="PreCertificationAmadis1" ProtocolVersion="3.0" SaleID="ArkosSales" MessageCategory="Reconciliation" MessageClass="Service" MessageType="Response"/>
	<ReconciliationResponse ReconciliationType="SaleReconciliation">
		<Response Result="Success"/>
		<TransactionTotals PaymentInstrumentType="Card" AcquirerID="123456" CardBrand="VISA">
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Debit"/>
			<PaymentTotals TransactionType="ReverseDebit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="Credit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="ReverseCredit" TransactionCount="0"/>
			<PaymentTotals TransactionAmount="0.00" TransactionCount="0" TransactionType="Declined"/>
			<PaymentTotals TransactionCount="0" TransactionType="Failed" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="OneTimeReservation" TransactionAmount="0.00"/>
		</TransactionTotals>
		<TransactionTotals CardBrand="MasterCard" PaymentInstrumentType="Card" AcquirerID="123456">
			<PaymentTotals TransactionType="Debit" TransactionAmount="50.00" TransactionCount="1"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="ReverseDebit" TransactionCount="0"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Credit"/>
			<PaymentTotals TransactionAmount="0.00" TransactionCount="0" TransactionType="ReverseCredit"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="Declined" TransactionCount="0"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="Failed" TransactionCount="0"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="OneTimeReservation"/>
		</TransactionTotals>
		<TransactionTotals PaymentInstrumentType="Card" AcquirerID="123456" CardBrand="MAESTRO">
			<PaymentTotals TransactionType="Debit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionType="ReverseDebit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="Credit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionAmount="0.00" TransactionCount="0" TransactionType="ReverseCredit"/>
			<PaymentTotals TransactionType="Declined" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Failed"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="OneTimeReservation" TransactionCount="0"/>
		</TransactionTotals>
		<TransactionTotals PaymentInstrumentType="Card" AcquirerID="123456" CardBrand="AMEX">
			<PaymentTotals TransactionAmount="0.00" TransactionCount="0" TransactionType="Debit"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="ReverseDebit"/>
			<PaymentTotals TransactionType="Credit" TransactionAmount="0.00" TransactionCount="0"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="ReverseCredit"/>
			<PaymentTotals TransactionCount="0" TransactionType="Declined" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Failed"/>
			<PaymentTotals TransactionType="OneTimeReservation" TransactionCount="0" TransactionAmount="0.00"/>
		</TransactionTotals>
		<TransactionTotals PaymentInstrumentType="Card" AcquirerID="123456" CardBrand="Discover">
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Debit"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="ReverseDebit" TransactionCount="0"/>
			<PaymentTotals TransactionType="Credit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionType="ReverseCredit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Declined"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Failed"/>
			<PaymentTotals TransactionType="OneTimeReservation" TransactionAmount="0.00" TransactionCount="0"/>
		</TransactionTotals>
		<TransactionTotals CardBrand="JCB" PaymentInstrumentType="Card" AcquirerID="123456">
			<PaymentTotals TransactionCount="0" TransactionType="Debit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="ReverseDebit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="Credit" TransactionCount="0"/>
			<PaymentTotals TransactionCount="0" TransactionType="ReverseCredit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="Declined" TransactionAmount="0.00"/>
			<PaymentTotals TransactionType="Failed" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionAmount="0.00" TransactionCount="0" TransactionType="OneTimeReservation"/>
		</TransactionTotals>
		<TransactionTotals AcquirerID="123456" CardBrand="CUP/UPI" PaymentInstrumentType="Card">
			<PaymentTotals TransactionType="Debit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionType="ReverseDebit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Credit"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="ReverseCredit"/>
			<PaymentTotals TransactionType="Declined" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Failed"/>
			<PaymentTotals TransactionCount="0" TransactionType="OneTimeReservation" TransactionAmount="0.00"/>
		</TransactionTotals>
		<TransactionTotals CardBrand="Carte a Piste" AcquirerID="123456" PaymentInstrumentType="Card">
			<PaymentTotals TransactionType="Debit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="ReverseDebit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="Credit" TransactionCount="0"/>
			<PaymentTotals TransactionAmount="0.00" TransactionType="ReverseCredit" TransactionCount="0"/>
			<PaymentTotals TransactionAmount="0.00" TransactionCount="0" TransactionType="Declined"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Failed"/>
			<PaymentTotals TransactionType="OneTimeReservation" TransactionCount="0" TransactionAmount="0.00"/>
		</TransactionTotals>
		<TransactionTotals AcquirerID="123456" PaymentInstrumentType="Card" CardBrand="STANDARD">
			<PaymentTotals TransactionType="Debit" TransactionCount="0" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="ReverseDebit"/>
			<PaymentTotals TransactionCount="0" TransactionType="Credit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionType="ReverseCredit" TransactionAmount="0.00"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Declined"/>
			<PaymentTotals TransactionCount="0" TransactionAmount="0.00" TransactionType="Failed"/>
			<PaymentTotals TransactionCount="0" TransactionType="OneTimeReservation" TransactionAmount="0.00"/>
		</TransactionTotals>
	</ReconciliationResponse>
</SaleToPOIResponse>

  • No labels