Installments

🚧

Coming soon

📘

This feature is only available in Middle East region and limited to certain acquirers.

This feature can only be used if your account has been enabled with the respective service.

To utilize installments on a terminal that connects to the Gateway using the nexo acquirer protocol (v6), the following steps must be performed.

To retrieve the eligible installment plans from the Gateway, the terminal needs to send a modified version of balance inquiry (Acceptor Authorisation Request).

FieldPresenceValue
MsgFctnMAUTQ
Tx/TxIdMSame value needs to be used in subsequent sale transaction
Card/CardBrndMCard brand identified by the terminal.
As of now, only 'V' for VISA is supported.
Cntxt/PmtCntxt/CardPresMtrue
Cntxt/PmtCntxt/CrdhldrPresMtrue
Tx/TxDtls/TtlAmtM
Tx/TxDtls/CcyM
Tx/TxDtls/AmtQlfrMACTL
Note: Only sale is support.
Tx/TxCaptrMfalse
Tx/TxTypeMBALC
CardDataNtryMdM
AttndncCntxtMATTD
OrgnlTx-not present
AddtlTxDataM/Installlment/EligablePlansQuery

The Gateway sends the balance inquiry response (Acceptor Authorisation Response) to the terminal.

FieldPresenceValue
MsgFctnMAUTP
Tx/TxDtls/TtlAmtM
Tx/TxDtls/CcyM
Tx/TxDtls/AmtQlfrMACTL
RspnToAuthstn/RspnM'APPR' in case there are 1 or more eligible installment plans
'DECL' in case there's no eligible installment plan
RspnToAuthstn/RspnRsnMResponse code + text
TxRspn/AuthstnRslt/RspnToAuthstn/AddtlRspnInfM/InstallmentPlanQueryResult

(even present in case of RspnToAuthstn/Rspn='DECL')
CmpltnReqrdMfalse
Bal-not present
ActnCNot present if RspnToAuthstn/Rspn='DECL'

One occurence per eligible installment plan with:
ActnTp='DISP'
MsgToPres/MsgDstn='CDSP'
MsgToPres/Frmt='TEXT'
MsgToPres/MsgCntt= see below key value pair as JSON structure

JSON structure:

Subfield of MsgToPres/MsgCnttDescriptionTypeExample
installmentPlanInquiryIdGateway internal reference to the plan. Needs to be used in subsequent sale request to chose an installment planstring, max length 50asdf4617-c2c7-03f0-5028-1332aa5b5678
installmentPlanIDIdentifier for an installment plan generated by installment providerstring, max length 36a2a44617-c2c7-03f0-5028-1332aa5bd601
installmentProviderService provider of the installment plans
As of now, only Visa Installment Service is supported.
string, max length 10In case of Visa Installment Service: 'VISA'
planDetails.numberOfInstallmentsNumber of installmentsnumber, fixed length 40005
planDetails.installmentFrequencyFrequency of the installmentsenum

Possible values:
weekly
biweekly
monthly
bimonthly
monthly
planDetails.annualInterestRateInterest rate per year (in percentage)number, max length 55.4
planDetails.currencyCurrency of amountsISO 4217 - currency codeAED
planDetails.oneTimeFeeAmountOne time installment fee amountnumber, max length 15, decimal places depending on 'Currency'123.55
planDetails.totalFeeAmountSum of all feesnumber, max length 15, decimal places depending on 'Currency'456.87
planDetails.rateAmountRecurring ratenumber, max length 15, decimal places depending on 'Currency'2233.44
termsAndConditions.textTerms and conditions provided by issuer of the installment planstring, max length 2000Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
termsAndConditions.urlA Terms and Conditions HTTPS URL hosted by the Issuer for displaying to the cardholder for acceptance when initiating a plan acceptance for this plan.string, max length 1000https://example-url.com
termsAndConditions.languageLanguage of 'TermsAndConditionsText'ISO 639-2 - language codeeng
termsAndConditions.versionVersion of the Terms & Conditions accepted by the consumer.string, max length 101.0
islamicPlanIndicates whether the plan is an Islamic Plan. If this field is set to true, the plan should be displayed according to Shariah Banking principles, for example using the term profit instead of interest.booleanfalse

Example:

{
"installmentPlanInquiryId":"asdf4617-c2c7-03f0-5028-1332aa5b5678",
"installmentPlanID":"a2a44617-c2c7-03f0-5028-1332aa5bd601",
"installmentProvider":"VISA",
"planDetails":{
    "numberOfInstallments":"0005",
    "installmentFrequency":"monthly",
    "annualInterestRate":5.4,
    "currency":"eng",
    "oneTimeFeeAmount":123.55,
    "totalFeeAmount":456.87,
    "rateAmount":2233.44
    },
"termsAndConditions:{
    "text":"abc",
    "url":"https://xyz.com",
    "language":"eng";
    "version":"1.0"
    },
"islamicPlan":false
}

Terminal sends sale request (Acceptor Authorisation Request) with a reference to the chosen installment plan.
Its' no required to send all plan detail in the sale request. If no plan was chosen by the cardholder, then terminal sends a standard sale request without any additional information.

FieldPresenceValue
Tx/TxCaptrMtrue
Tx/TxIdMTx/TxId used in balance inquiry request (Acceptor Authorisation Request) for the retrieval of eligible installment plans
AddtlTxDataC/installment/installmentProvider/installmentPlanInquiryId
(values to be used from balance inquiry response)

Want a quick overview?