-
Introduction
-
Commands & Actions
-
Transaction Sequence
-
MasterPass
-
Visa Checkout
-
Foreign Exchange
-
Parameter Description & Action
-
Gateway Domain Knowledge
-
Transaction Result Codes
-
Out Of Band
-
Payment Facilitator
-
Tokenization
-
SOAP API
-
Pos Device Intergration
-
Acquire Contact Information
-
3D Secure
-
Enterprise API Samples
-
Card on File
-
Additional Data Transactions
Merchants have the choice of doing 3D secure authentication directly with the 3DS Vendor ("MPI") or via the iVeri Gateway. In any event, when the authentication process is completed successfully, the merchant can POST the payment instruction to the iVeri Gateway with the authentication data using the SOAP or REST webservice.
Debit/Authorisation 3DS 2 Payment Parameters
The applicable set of 3DS 2 parameters expected in the Authorisation/Debit message are as follows:
Parameter |
Description |
3D secure Parameters |
|
CardHolderAuthenticationID |
Mandatory for 3DS 1 and 2: Commonly known as an XID: Unique identifier generated during the 3D secure process |
CardHolderAuthenticationData |
Mandatory for 3DS 1 and 2: Commonly known as UCAF -(universal cardholder authentication field) for Mastercard or CAVV( cardholder authentication verification value), generated on completion of the authentication between cardholder and card issuer |
ElectronicCommerceIndicator |
Mandatory for 3DS 1 and 2: Commonly known as “ECI”: Indicates if the cardholder was fully authenticated, attempted or not. Possible values: ThreeDSecure (ECI “05”, “02”), ThreeDSecureAttempted (“ECI “06” or “01”) or SecureChannel (ECI “07”) |
ThreeDSecure_VEResEnrolled |
Optional: Possible values: Y|N|U - Indicates if the card is enrolled. |
ThreeDSecure_RequestID |
Optional: Unique identifier returned by the Gateway on completion of the 3D secure authentication process |
New 3D Secure 2 Parameters |
|
ThreeDSecure_AuthenticationType |
Optional: Possible values( not limited to) "01", "02", "03". Must be as generated on completion of the 3D secure authentication process. indicates the method of authentication used. |
ThreeDSecure_ProtocolVersion |
Mandatory: Indicates the version of 3D
secure used |
ThreeDSecure_DSTransID |
Mandatory: Directory Server Transaction ID returned on completion of the 3D secure authentication process |
|
|
Debit/Authorisation
Submission of transactions can be made on the Gateway URL's listed in the REST and SOAP sections per acquiring bank partner. As a note, the submission of the Debit/Authorisation message assumes the following:
- 3DS 2 authentication was a success
- Financial message makes use of the transaction types listed in the "Commands" section
- Parameter Description is referenced
- Use of the test application ID with mode "Test" for integration testing and "LIVE" application ID with "LIVE" mode for real card processing.
Authorisation ( "Pre-Auth") with PAN
Reserves or withholds funds on the cardholders related card account
- If Authorisation is no longer needed or applicable, a reversal of the Authorisation("Pre-Auth") should be performed using the AuthorisationReversal
- To settle a Pre-Authorised amount, a follow-debit-up can performed
REST |
SOAP |
Request |
|
{ "Version": "2.0", "CertificateID": "{5c4b9c74-0063-4240-9cff-f730675c5bd0}", "ProductType": "Enterprise", "ProductVersion": "WebAPI", "Direction": "Request", "Transaction": { "ApplicationID": "{d8d5a94-8fa0-428d-a539-3a5baf166f7f}", "Command": "Authorisation", "Mode": "TEST", "MerchantReference": "20221108_1042", "MerchantTrace": "DIAAAY4QW2", "Currency": "ZAR", "Amount": "3000", "ExpiryDate": "1025", "PAN": "4242424242424242"
} }
|
<soap:Envelope xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd= "http://www.w3.org/2001/XMLSchema" xmlns:soap= "http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <Execute xmlns="http://iveri.com/"> <validateRequest>false</validateRequest> <protocol>V_XML</protocol> <protocolVersion>7.0</protocolVersion> <request> <V_XML Version="2.0" CertificateID= "cf4b7e7a-4fec-43b4-a2cb-221263c0a34b" ProductType="Enterprise" ProductVersion= "iVeriWebService" Direction="Request"> <Transaction ApplicationID= "7c523a4-7da7-4e59-b888-569fe65c535b" Command="Authorisation" Mode= "Test"> <MerchantTrace>2407E27568ABEEE </MerchantTrace> <Amount>1000</Amount> <Currency>ZAR</Currency> <ExpiryDate>042024</ExpiryDate> <MerchantReference>20220104.1051 </MerchantReference> <PAN>4242424242424242</PAN> </Transaction></V_XML> </request> </Execute> </soap:Body> </soap:Envelope> |
Response |
|
{ "Version": "2.0", "Direction": "Response", "Transaction": { "MerchantTrace": "DIAAAY4QW2", "Amount": "3000", "AuthorisationCode": "544161", "CCNumber": "4242........4242", "Currency": "ZAR", "ExpiryDate": "102025", "MerchantReference": "20221108_1042", "Terminal": "Default", "TransactionIndex": "{5C8F61BE-15AD-4201-B361-66AD52D2EFAE}", "MerchantName": "iVeri Payment Technology", "MerchantUSN": "7771777", "Acquirer": "NBPostilionNBSouthAfrica", "AcquirerReference": "95702:04641685", "AcquirerDate": "20221229", "AcquirerTime": "104241", "DisplayAmount": "R 30.00", "BIN": "4", "Association": "VISA", "CardType": "Unknown CardType", "Issuer": "Unknown Issuer", "Jurisdiction": "International", "PAN": "4242........4242", "PANMode": "Keyed", "ReconReference": "04641685", "CardHolderPresence": "CardNotPresent", "MerchantAddress": "MERCHANT ADDRESS", "MerchantCity": "Sandton", "MerchantCountryCode": "ZA", "MerchantCountry": "South Africa", "DistributorName": "Nedbank", "ApplicationID": "{D8D5A94-8FA0-428D-A539-3A5BAF166F7F}", "Command": "Authorisation", "Mode": "Test", "RequestID": "{3D1860F1-86E1-4AE2-A8EA-EFC0D6A5B8AF}", "Result": { "Status": "0", "Code": "0", "Description": "", "AppServer": "105IVERIAPPPR1N", "DBServer": "105iveridbpr01n", "Gateway": "Nedbank", "AcquirerCode": "00", "AcquirerDescription": "" } } }
|
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap= "http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd= "http://www.w3.org/2001/XMLSchema"> <soap:Body> <ExecuteResponse xmlns= "http://iveri.com/"> <ExecuteResult><V_XML Version=" 2.0" Direction="Response"> < Transaction ApplicationID="{7C523A4-7DA7-4E59-B888-569FE65C535B}" Command="Authorisation" Mode="Test" RequestID= "{E7134374-BC00-428E-9F32-AE5DED439EEF}"> <Result Status="0" Code="0" Description= " AppServer="105IVERIAPPPR2N" DBServer= "105iveridbpr01n" Gateway="Nedbank" AcquirerCode="00" AcquirerDescription="" /> <MerchantTrace>2407E27568ABEEE </MerchantTrace> <Amount>1000</Amount> <AuthorisationCode>544721 </AuthorisationCode> <CCNumber>4242........4242 </CCNumber> <Currency>ZAR</Currency> <ExpiryDate>042024</ExpiryDate > <MerchantReference>20220104.1051 </MerchantReference> <Terminal>Default</Terminal> <TransactionIndex>{1D638328-7A15-4937-9818-C3F9C9B96E52}</TransactionIndex> <MerchantName>iVeri Payment Technology </MerchantName> <MerchantUSN>7771777</MerchantUSN> <Acquirer>NBPostilionNBSouthAfrica</Acquirer> <AcquirerReference>95702:04641686 </AcquirerReference> <AcquirerDate>20221229 </AcquirerDate> <AcquirerTime>105201 </AcquirerTime> <DisplayAmount>R 10.00 </DisplayAmount> <BIN>4</BIN> <Association>VISA </Association> <CardType>Unknown CardType </CardType> <Issuer>Unknown Issuer </Issuer> <Jurisdiction>International </Jurisdiction> <PAN>4242........4242</PAN > <PANMode>Keyed</PANMode > <ReconReference>04641686 </ReconReference> <CardHolderPresence>CardNotPresent </CardHolderPresence> <MerchantAddress> MERCHANT ADDRESS</MerchantAddress> <MerchantCity>Sandton </MerchantCity> <MerchantCountryCode>ZA </MerchantCountryCode> <MerchantCountry>South Africa </MerchantCountry> <DistributorName>Nedbank </DistributorName> </Transaction> </V_XML></ExecuteResult> </ExecuteResponse> </soap:Body> </soap:Envelope>
|
Debit( "Sale" or "Purchase") with PAN
Debits the cardholder and credits the merchant
- Reversing of Purchase/Sale transaction can be used by a initiating Void
REST Webservice | SOAP Webservice |
Format: JSON Endpoint - https://[portal domain]/api/transactions "Version": "2.0", "CertificateID": "{4c9693f-71dd-4044-802d-6e234effe8f2}", "ProductType": "Enterprise", "ProductVersion": "WebAPI", "Direction": "Request", "Transaction": { "ApplicationID": "{ca8a6eae-a469-4b39-bef3-aa029ca3a806}", "Command": "Debit", "Mode": "Test", "Amount": "1500", "ExpiryDate": "0123", "MerchantReference": "3DS2:20210920.004", "Currency": "ZAR", "PAN": "4069425217889137", "CardSecurityCode": "134", "ThreeDSecure_ProtocolVersion": "2.1.0", "CardHolderAuthenticationID": "xVyRZy0bYuN69j1pZi/zlmC68Vw=", "CardHolderAuthenticationData": "AJkBCWhygQAAAAEDhXKBAAAAAAA=", "ElectronicCommerceIndicator": "ThreeDSecure", "ThreeDSecure_DSTransID": "2e962032-0499-4fb6-9cf3-e640ceebeb63", "ThreeDSecure_AuthenticationType": "01" "ThreeDSecure_VEResEnrolled": "Y" } } | Format: XML Endpoint - https://[portal domain] /iVeriWebservice/Service.asmx <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <Execute xmlns="http://iveri.com/"> <validateRequest>false</validateRequest> <protocol>V_XML</protocol> <protocolVersion>7.0</protocolVersion> <request><V_XML Version="2.0" CertificateID="b2f980c-f61a-473e-a685-5e8d38595d84" ProductType="Enterprise" ProductVersion="iVeriWebService" Direction="Request"> <Transaction ApplicationID="66bc5003-88dd-4cd5-9b27-2b5cdb7a8b73" Command="Debit" Mode="Test"> <MerchantTrace> 07E7227568BEEE5A58E890</MerchantTrace> <Amount>2000</Amount> <Currency>ZAR</Currency> <ExpiryDate>042024</ExpiryDate> <MerchantReference>20220104.0922< <CardSecurityCode>123</CardSecurityCode> <PAN> 4069425217889137</PAN> <ElectronicCommerceIndicator>ThreeDSecure< /ElectronicCommerceIndicator> <CardHolderAuthenticationID> 2NU0T9++YWB1ma25dEOabg7Wlu8= < /CardHolderAuthenticationID> <CardHolderAuthenticationData >AJkBApWVVwAAABOIcQASdIS CkYQ=</CardHolderAuthenticationData> ;<ThreeDSecure_ProtocolVersion>2.1.0 </ThreeDSecure_ProtocolVersion> <ThreeDSecure_DSTransID >6c2556b6-852c-4131-a613-9ec3de31401 </ThreeDSecure_DSTransID>< ThreeDSecure_AuthenticationType >01</ThreeDSecure_AuthenticationType> <ThreeDSecure_VEResEnrolled>Y </ThreeDSecure_VEResEnrolled> </Transaction> </V_XML> </request> </Execute> </soap:Body>
</soap:Envelope>
|
Response: { "Version": "2.0", "CertificateID": "{4c96973f-71dd-4044-802d-6e234effe8f2}", "ProductType": "Enterprise", "ProductVersion": "WebAPI", "Direction": "Request", "Transaction": { "ApplicationID": "{ca8a6eae-a469-4b39-bef3-aa029ca3a806}", "Command": "Debit", "Mode": "Test", "Amount": "1500", "ExpiryDate": "0123", "MerchantReference": "3DS2:20210920.004", "Currency": "ZAR", "PAN": "4069425217889137", "ThreeDSecure_ProtocolVersion": "2.1.0", "CardHolderAuthenticationID": "xVyRZy0bYuN69j1pZi/zlmC68Vw=", "CardHolderAuthenticationData": "AJkBCWhygQAAAAEDhXKBAAAAAAA=", "ElectronicCommerceIndicator": "ThreeDSecure", "ThreeDSecure_DSTransID": "2e962032-0499-4fb6-9cf3-e640ceebeb63", "ThreeDSecure_AuthenticationType": "01" "ThreeDSecure_VEResEnrolled": "Y" } } | Response:
<soap:Body> <ExecuteResponse xmlns="http://iveri.com/"> <ExecuteResult><V_XML Version="2.0" Direction="Response"> <Transaction ApplicationID="{66BC5003-88DD-4CD5-9B27-2B5CDB7A8B73}" Command="Debit" Mode="Test" RequestID="{AF5214BF-878E-4691-A124-96E0748CF062}"> <Result Status="0" Code="0" Description="" AppServer="QAGW2012APP1" DBServer="QAGW2012DB2" Gateway="QA" AcquirerCode="00" AcquirerDescription="" /> <MerchantTrace>07E7227568BEEE5A58E890< /MerchantTrace> <Amount>2000</Amount> <AuthorisationCode>315669</AuthorisationCode> <CCNumber>4069........9137</CCNumber> <Currency>ZAR</Currency> <ElectronicCommerceIndicator>ThreeDSecure< /ElectronicCommerceIndicator> <ExpiryDate>012023</ExpiryDate> <MerchantReference>202112.002 </MerchantReference> <Terminal>Default</Terminal> <TransactionIndex>{F9401D94-4CA7-46EF-A007- 9883950A80D3}</TransactionIndex> <MerchantName>iVeri Payment Technology</MerchantName> <MerchantUSN>7771777</MerchantUSN> <Acquirer>NBPostilionNBSouthAfrica< /Acquirer> <AcquirerReference>81774:09170322< /AcquirerReference> <AcquirerDate>20220103</AcquirerDate> <AcquirerTime>154109</AcquirerTime> <DisplayAmount>R 20.00</DisplayAmount> <BIN>4</BIN> <Association>VISA</Association> <CardType>Unknown Card Type</CardType> <Issuer>Unknown Issuer</Issuer> <Jurisdiction>International</Jurisdiction> <PAN>4069........9137</PAN> <PANMode>Keyed,CVV</PANMode> <ReconReference>09170322 </ReconReference> <CardHolderPresence>CardNotPresent,eCommerce, ThreeDSecure </CardHolderPresence> <MerchantAddress>MERCHANT ADDRESS</MerchantAddress> <MerchantCity>Sandton</MerchantCity> <MerchantCountryCode>ZA< ;/MerchantCountryCode> <MerchantCountry>South Africa</MerchantCountry> <DistributorName>Nedbank </DistributorName> </Transaction> </V_XML></ExecuteResult> </ExecuteResponse> |