Adyen JSON (Rest 2)API Payment Integration

About Adyn JSON API:

Adyen is the leading technology provider powering payments for global commerce in the 21st century. With a seamless solution for mobile, online, and in-store transactions, our technology enables merchants to accept almost any type of payment, anywhere in the world.

FeatureLevel of Support
AuthImplemented
Sale (Auth+Capture)Implemented
CaptureImplemented
VoidImplemented
CreditImplemented
Card on FileImplemented
Soft DescriptorsImplemented
3DS 2 passthroughImplemented

Authentication and Security Credentials:

Supported Parameters:

Key NameFormatMandatoryDescriptions
apiVersionNumericalRequired“1.0.1”
apiTypeAlphabeticalRequired“pxyhpci”
userNameAlphanumericRequiredAPI Username
userPassKeyAlphanumericRequiredAPI PassKey
pxyCreditCard.creditCardNumberNumericalRequiredHostedPCI Token Representing Credit Card
pxy.CreditCard.cardCodeVerificationNumericalOptionalHostedPCI Token Representing CVV Code
pxyCreditCard.expirationMonthNumericalRequiredExpiration month with 2 digits for example, for December use “12”
pxyCreditCard.expirationYearNumericalRequiredExpiration year with 4 digits for example, for 2025, use “2025”
pxyTransaction.txnCurISOAlphabeticalRequired3 letter ISO Currency Code for example, “USD” or “CAD”
pxyTransaction.txnAmountNumericalRequiredAmount to Authorize, for example for $10.50 use 10.50
pxyTransaction.merchantRefIdNumericalRequiredMerchant reference number can be order id or invoice id
pxyTransaction.txnPayNameAlphanumericRequiredHostedPCI payment profile name, for example “DEF”
pxyTransaction.txnCommentAlphabeticalOptionalShort comment
pxyCustomerInfo.emailAlphanumericOptionalCustomer’s Email Address
pxyCustomerInfo.billingLocation.firstNameAlphabeticalOptionalCustomer’s First Name
pxyCustomerInfo.billingLocation.lastNameAlphabeticalOptionalCustomer’s Last Name
pxyCustomerInfo.billingLocation.phoneNumberNumericalOptionalBilling Phone Number
pxyCustomerInfo.billingLocation.addressAlphanumericOptionalCustomer’s Billing Address
pxyCustomerInfo.billingLocation.address2AlphanumericOptionalSecondary Billing Address
pxyCustomerInfo.billingLocation.cityAlphabeticalOptionalCustomer’s Billing City
pxyCustomerInfo.billingLocation.stateAlphabeticalOptionalCustomer’s Billing State or Province
pxyCustomerInfo.billingLocation.zipCodeNumericalOptionalCustomer’s Billing Zip Code or Postal Code
pxyCustomerInfo.billingLocation.countryAlphabeticalOptionalCustomer’s Billing Country
pxyCustomerInfo.shippingLocation.firstNameAlphabeticalOptionalCustomer’s First Name
pxyCustomerInfo.shippingLocation.lastNameAlphabeticalOptionalCustomer’s Last Name
pxyCustomerInfo.shippingLocation.phoneNumberNumericalOptionalBilling Phone Number
pxyCustomerInfo.shippingLocation.addressAlphanumericOptionalCustomer’s Billing Address
pxyCustomerInfo.shippingLocation.address2AlphanumericOptionalSecondary Billing Address
pxyCustomerInfo.shippingLocation.cityAlphabeticalOptionalCustomer’s Billing City
pxyCustomerInfo.shippingLocation.stateAlphabeticalOptionalCustomer’s Billing State or Province
pxyCustomerInfo.shippingLocation.zipCodeNumericalOptionalCustomer’s Billing Zip Code or Postal Code
pxyCustomerInfo.shippingLocation.countryAlphabeticalOptionalCustomer’s Billing Country
pxyTransaction.merchantAccountNameAlphabeticalOptionalSoft Descriptors / Dynamic Decriptors
pxyTransaction.merchantPhoneNumNumericalOptionalSoft Descriptors / Dynamic Decriptors
pxyTransaction.merchantProductNameAlphabeticalOptionalSoft Descriptors / Dynamic Decriptors
pxyTransaction.cardOnFileIssuerIdAlphaNumericOptionalCard On File
pxyTransaction.cardOnFileTxnRefAlphaNumericOptionalCard On File – (C, R, U)
pxyTransaction.cardOnFileTxnTypeAlphaNumericOptionalCard On File – (0,1)

API Endpoint URL:

https://[HPCI_API_HOSTENAME]/iSynSApp/paymentAuth.action

API Request Body:

pxyTransaction.cardOnFileTxnType=C&pxyCreditCard.creditCardNumber=545454..........&pxyCustomerInfo.shippingLocation.address=1+main+St&pxyCustomerInfo.billingLocation.city=Old+City&pxyOrder.description=New+Product+Statement&userPassKey=9dG-............................&pxyCustomerInfo.billingLocation.address2=main+St&pxyTransaction.txnAmount=1500.00&pxyCustomerInfo.shippingLocation.zipcode=12345&pxyCreditCard.cardCodeVerification=737&pxyTransaction.txnPayName=DEF_Adyen_JSON&pxyCustomerInfo.shippingLocation.lastName=Jones&pxyCustomerInfo.shippingLocation.city=Old+City&apiVersion=1.0.1&pxyCustomerInfo.shippingLocation.state=ZZ&pxyCustomerInfo.shippingLocation.phoneNumber=444-456-1234&pxyCustomerInfo.customerIP=127.0.0.1&pxyCustomerInfo.shippingLocation.firstName=Jane&pxyCustomerInfo.billingLocation.firstName=Jane&pxyCustomerInfo.billingLocation.state=ZZ&pxyTransaction.merchantPhoneNum=123-456-7890&pxyCustomerInfo.billingLocation.country=US&pxyCustomerInfo.billingLocation.phoneNumber=444-456-1234&pxyTransaction.merchantProductName=New+Product+Statement&pxyCreditCard.expirationMonth=03&pxyCustomerInfo.customerId=CST2&pxyCustomerInfo.shippingLocation.country=US&userName=[APIUsername]&pxyTransaction.txnCurISO=GBP&pxyTransaction.merchantAccountName=Merchant1&pxyCustomerInfo.email=null%40email.com&pxyTransaction.cardOnFileTxnRef=0&pxyCreditCard.expirationYear=2030&pxyCustomerInfo.billingLocation.lastName=Jones&pxyCustomerInfo.billingLocation.address=1&apiType=pxyhpci&pxyCustomerInfo.billingLocation.zipcode=12345

3DS 2.0 Passthrough implementation with Cardinal Commerce

Adyen JSON API has been implemented with Cardinal Commerce for 3DS pass-through Authentication.

The parameters listed on the page are required along with the mandatory AUTH transaction parameters to make a successful 3DSecure transaction.

3DS 2.0 “Verifyenroll” Call

PARAMETERSVALUE
pxyTransaction.txnPayName[3ds payment profile name]
pxyThreeDSecAuth.actionName[verifyenroll]
pxyThreeDSecAuth.callModereportall
pxyThreeDSecAuth.authSessionId[cruiseSessionId returned within threeDSValuesObj in hpciSiteSuccessHandlerV4 and later versions]
pxyThreeDSecAuth.authOrderId[threeDSOrderId returned within threeDSValuesObj in hpciSiteSuccessHandlerV4 and later versions]
pxyCustomerInfo.browserUserAgentHeader[Browser User Agent Header]
pxyCustomerInfo.browserAcceptHeader[Browser Accept Header]

3DS 2.0 “verifyresp” Call

PARAMETERSVALUE
pxyTransaction.txnPayName[3ds payment profile name]
pxyThreeDSecAuth.actionName[verifyresp]
pxyThreeDSecAuth.authSessionId[cruiseSessionId returned within threeDSValuesObj in hpciSiteSuccessHandlerV4 and later versions]
pxyThreeDSecAuth.authCAVV[response from the first API call “pxyResponse.threeDSCAVV”]
pxyThreeDSecAuth.authVerifyTxnId[response from the first API call “pxyResponse.threeDSXid”]
pxyThreeDSecAuth.authStatus[response from the first API call “pxyResponse.threeDSPARequest”]
pxyThreeDSecAuth.protocolVersion[response from the first API call “pxyResponse.threeDSProtoVersion”]
pxyThreeDSecAuth.authECI
pxyThreeDSecAuth.dirSrvTxnId3D Secure 2.0
pxyThreeDSecAuth.authTxnIdRequired for 3ds 1.0
pxyThreeDSecAuth.cavvAlgorithmRequired for 3ds 1.0

3DS 2.0 Verifyenroll call Request

pxyCreditCard.creditCardNumber=400000..........&pxyOrder.orderItems[0].itemPrice=65.65&pxyCustomerInfo.billingLocation.city=Toronto&pxyOrder.orderItems[0].itemQuantity=1&pxyOrder.description=Test+Order&pxyOrder.orderItems[0].itemDescription=Best&pxyOrder.orderItems[0].itemTaxable=N&pxyOrder.invoiceNumber=Order%3A+AAA69142615&userPassKey=9dG-............................&pxyThreeDSecAuth.authSessionId=0_8884c755-3b4c-41ce-87fc-aeacf512b513&pxyTransaction.txnAmount=65.65&pxyCreditCard.cardCodeVerification=737&pxyTransaction.txnPayName=DEF_Adyen_Json&pxyCustomerInfo.browserAcceptHeader=text%2Fhtml%2Capplication%2Fxhtml%2Bxml%2Capplication%2Fxml%3Bq%3D0.9%2Cimage%2Favif%2Cimage%2Fwebp%2Cimage%2Fapng%2C*%2F*%3Bq%3D0.8%2Capplication%2Fsigned-exchange%3Bv%3Db3%3Bq%3D0.9&pxyThreeDSecAuth.actionName=verifyenroll&apiVersion=1.0.1&pxyCustomerInfo.customerIP=127.0.0.1&pxyCustomerInfo.billingLocation.firstName=AUTHORISED&pxyCustomerInfo.billingLocation.country=CA&pxyCustomerInfo.billingLocation.phoneNumber=4168351525&pxyOrder.orderItems[0].itemName=item&pxyOrder.totalAmount=65.65&pxyCreditCard.expirationMonth=03&pxyCustomerInfo.customerId=hpcitest1&userName=[APIUsername]&pxyTransaction.txnCurISO=GBP&pxyCustomerInfo.billingLocation.zipCode=M9K8U6&pxyCustomerInfo.browserUserAgentHeader=Mozilla%2F5.0+%28X11%3B+Linux+x86_64%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F83.0.4103.61+Safari%2F537.36&pxyCustomerInfo.email=hpcitest1%40mailinator.com&pxyOrder.orderItems[0].itemId=Item-1-AAA69142615&pxyCreditCard.cardType=VISA&pxyThreeDSecAuth.authOrderId=67UDMNKVH1RE1001821&pxyCreditCard.expirationYear=2030&pxyThreeDSecAuth.callMode=reportall&pxyCustomerInfo.billingLocation.address=22+Hilltop+St&apiType=pxyhpci&pxyTransaction.merchantRefId=AAA69142615

Adyen Json (Rest 2) Gateway Tokenization

Parameters Required for Gateway Tokenization:
PARAMETERSVALUE
pxyCreditCard.creditCardNumber[HostedPCI Token]
pxyCreditCard.cardCodeVerification[HostedPCI CVV place holder]
pxyCreditCard.expirationMonth[Credit Card expire month]
pxyCreditCard.expirationYear[Credit Card expire year]
pxyTransaction.txnPayName[Profile Name provided by HostedPCI]
pxyCustomerInfo.billingLocation.firstName[Client’s first name as it appears on the card]
pxyCustomerInfo.billingLocation.lastName[Client’s last name as it appears on the card]
Gateway Tokenization API Call
Request:
pxyCreditCard.creditCardNumber=411111..........&pxyCustomerInfo.billingLocation.city=Toronto&userPassKey=[API USER PASSKEY]&pxyCreditCard.expirationMonth=03&pxyTransaction.txnAmount=2.00&userName=[API USERNAME]&pxyCreditCard.cardCodeVerification=737&pxyTransaction.txnPayName=[Adyen_profile]&pxyTransaction.txnCurISO=USD&pxyCustomerInfo.billingLocation.zipCode=A1B+2C3&pxyCustomerInfo.email=test1%40hostedpci.com&apiVersion=1.0.1&pxyCustomerInfo.customerIP=XX.XXX.XXX.XXX&pxyCreditCard.expirationYear=2030&pxyCustomerInfo.billingLocation.lastName=Ein&pxyCustomerInfo.billingLocation.firstName=Save&pxyCustomerInfo.billingLocation.state=ON&pxyCustomerInfo.billingLocation.address=123+Main+St&apiType=pxyhpci&pxyTransaction.merchantRefId=ER452-97&pxyCustomerInfo.billingLocation.country=CA
Response:
status=success&operId=&tokenId=114720&pxyResponse.processorRefId=&pxyResponse.processorType=adyenJsonResponse&pxyResponse.threeDSMessageId=&pxyResponse.cardOnFileIssuerId=&pxyResponse.threeDSErrorSubId=&pxyResponse.threeDSReasonDesc=&pxyResponse.responseAVS2=&pxyResponse.responseStatus=approved&pxyResponse.responseAVS1=&pxyResponse.responseAVS4=&pxyResponse.threeDSCAVV=&pxyResponse.responseAVS3=&pxyResponse.threeDSXid=&pxyResponse.responseStatus.reasonCode=&pxyResponse.threeDSPARequest=&pxyResponse.responseCVV1=&pxyResponse.responseCVV2=&pxyResponse.gatewaySubToken2=czM70260774&pxyResponse.threeDSTransactionId=&pxyResponse.gatewaySubToken1=SJ4RXWZJ6PKRX2V5&pxyResponse.gatewaySubToken3=&pxyResponse.declineSource=&pxyResponse.merchantRefId=ER452-97&pxyResponse.threeDSErrorId=&pxyResponse.networkToken.expiryMMYY=&pxyResponse.payInstrument=&pxyResponse.networkToken.token=&pxyResponse.networkToken.status=&pxyResponse.threeDSReasonCode=&pxyResponse.threeDSEnrolled=&pxyResponse.threeDSAcsUrl=&pxyResponse.gtyUniqueOperResp=&pxyResponse.threeDSErrorDesc=&pxyResponse.threeDSSessionId=&pxyResponse.responseAuthCode=&pxyResponse.mappedParams=txnResponse.ccTypeEst%3DVISA&pxyResponse.threeDSDDCPageData=&pxyResponse.threeDSARS=&pxyResponse.threeDSOrderId=&pxyResponse.threeDSAcsTxnId=&pxyResponse.gatewayToken.status=&pxyResponse.gatewaySession=&pxyResponse.responseStatus.name=&pxyResponse.paymentMethodId=&pxyResponse.isPspRetried=&pxyResponse.gatewayToken=SJ4RXWZJ6PKRX2V5_TKNSEP_czM70260774&pxyResponse.brandAuthResponseCodeDescription=&pxyResponse.responseStatus.description=&pxyResponse.gatewayToken.fullNativeResp=&pxyResponse.threeDSProtoVersion=&pxyResponse.threeDSDDCUrl=&pxyResponse.gtyUniqueOperKey=&pxyResponse.threeDSECI=&pxyResponse.cardOnFileSettlementDate=&pxyResponse.fullNativeResp=expiryMonth%3D03%26expiryYear%3D2030%26holderName%3DSave%2BEin%26id%3DSJ4RXWZJ6PKRX2V5%26lastFour%3D1111%26shopperReference%3DczM70260774%26type%3Dscheme%26status%3DAuthorised%26storePaymentMethodId%3DSJ4RXWZJ6PKRX2V5%26shopperReferenceId%3DczM70260774&pxyResponse.recurringAdviceCode=&pxyResponse.threeDSErrorSubIdType=&pxyResponse.threeDSAcsPageData=&pxyResponse.threeDSCavvAlgorithm=&pxyResponse.brandAuthResponseCode=&pxyResponse.paymentMethodNetwork=&pxyResponse.txnPayName=&pxyResponse.responseStatus.code=&pxyResponse.paymentDeclineMessage=&pxyResponse.brandCategoryCode=&pxyResponse.recurringAdviceDescription=&pxyResponse.threeDSSRS=