Payment Optimization
3DS Execution
PSP Authorization
12 min
authorization with 3ds results to provide the bank with the 3ds results, it is necessary to modify your integration with the payment service provider (psp) this adjustment usually involves enriching the psp payment request with the following values from the forter 3ds result https //docs forter com/reference/3ds result response's verificationmethod verificationspecificdata threeds object forter's threeds field common names authenticationvalue authentication value / cavv / aav / cryptogram ecivalue eci / eciflag / ecivalue / electronic commerce indicator version 3ds version dstransid dstransid / directory server transaction id / transaction id (formerly xid) examples for common psps adyen map the previously mentioned forter fields to the corresponding fields within the adyen authorize request https //docs adyen com/api explorer/checkout/71/post/payments#request mpidata adyen's mpidata \<attribute> forter's verificationmethod verificationspecificdata threeds \<attribute> cavv authenticationvalue eci ecivalue threedsversion version dstransid dstransid braintree map the previously mentioned forter fields to the corresponding fields within the braintree transaction sale request https //developer paypal com/braintree/docs/reference/request/transaction/sale/node#three d secure pass thru braintree's three d secure pass thru \<attribute> forter's verificationmethod verificationspecificdata threeds \<attribute> cavv authenticationvalue eciflag ecivalue threedsecureversion version dstransactionid dstransid stripe contact your account manager at stripe and ask to enable “3ds import” in the paymentintent https //docs stripe com/api/payment intents/create#create payment intent payment method options card three d secure object, please include the following child attributes inside the payment method options card https //stripe com/docs/api/payment intents/object#payment intent object payment method options card attribute and map them to the corresponding forter fields as indicated below stripe's payment method options card three d secure \<attribute> forter's verificationmethod verificationspecificdata threeds \<attribute> cryptogram authenticationvalue transaction id dstransid version version electronic commerce indicator ecivalue see also stripe's 3dsecure import guide https //docs stripe com/payments/payment intents/three d secure import example "payment method options" { "card" { "three d secure" { "cryptogram" "kamtkcfoim134yphdhh4o4qbiurr", "transaction id" "c5b808e7 1de1 4069 a17b f70d3b3b1645", "version" "2 2 0", "electronic commerce indicator" "05" } } worldpay awp gw review worldpay awp https //developer worldpay com/docs/access worldpay/payments/authorize a payment#3ds for full details add the customer object to the request with forter's 3ds results worldpay's customer authentication \<attribute> forter's verificationmethod verificationspecificdata threeds version version type "3ds" eci ecivalue authenticationvalue authenticationvalue transactionid dstransid "customer" { "authentication" { "version" "2 1 0" "type" "3ds", "eci" "05" "authenticationvalue" "mtizndu2nzg5mdeymzq1njc4ota" "transactionid" "c5b808e7 1de1 4069 a17b f70d3b3b1645" } } checkout com map the previously mentioned forter fields to the corresponding fields within checkout's authorization request https //www checkout com/docs/payments/authenticate payments#additional body parameters checkout com's 3ds \<attribute> forter's verificationmethod verificationspecificdata threeds \<attribute> enabled true cryptogram authenticationvalue eci ecivalue version version xid dstransid { "source" { "type" "card", "number" "5436031030606378", "expiry month" 12, "expiry year" 2025 }, "amount" 257, "currency" "usd", "3ds" { "enabled" true, "eci" "06", "cryptogram" "mtizndu2nzg5mdeymzq1njc4ota=", "xid" "79f6205c ff5c 4a4c 8fca 90f67f3a6470", "version" "2 0 1" } } payu / paymentsos paymetsos's three d secure attributes external \<attribute> forter's verificationmethod verificationspecificdata threeds \<attribute> three d secure version version three d secure authentication status transstatus ds xid dstransid encoding "base64" cavv authenticationvalue eci flag ecivalue fiserv call /payments endpoint and include the 3ds authentication results https //docs fiserv dev/public/docs/3 d secure 1#3dsmethod notification request response fiserv's authenticationresult \<attribute> forter's verificationmethod verificationspecificdata threeds \<attribute> authenticationtype "secure3dauthenticationresult" authenticationresponse transstatus cavv authenticationvalue dstransactionid dstransid below is a request payload for example "authenticationresult" { "authenticationtype" "secure3dauthenticationresult", "dstransactionid" "f3371948 5388 43a6 bca4 b49700019437", "authenticationresponse" "y", "cavv" "artnbczihcqaaaabzlyfxaabvcaa" } authorization with psd2 exemption the following part is relevant only for psd2 solution in order to pass the bank a request for exemption from 3ds following forter's recommendation in the order response, you should adjust your integration with the psp and include in the psp authorization request a flag for tra exemption or low value or secure corp exemption contact your psp to enable such a call (it is not always activated by default), and get their relevant authorization api reference which explains how to pass a request for tra exemption and low value exemption examples for common psps adyen review adyen documentation https //docs adyen com/online payments/psd2 sca compliance and implementation guide/sca options#apply exemption for passing exemption change the default setting in the customer area in you adyen dasboard doing this will override adyen's choice to apply tra for a transaction or not navigate to risk > risk settings > general > perform tra choose enable 3rd party/proprietary risk solution tra to apply the tra exemption yourself per transaction pass the relevant exemption type ( transactionriskanalysis \ lowvalue \ securecorporate ) in the scaexemption object, following forter's recommendation ( request sca exemption tra \ request sca exemption low value \ request sca exemption corp ) example additionaldata" { "scaexemption" "lowvalue" } checkout com review checkout sca documentation https //www checkout com/docs/payments/ensure regulatory compliance/sca compliance guide#3ds request examples for passing exemption pass the relevant exemption type via the 3ds enabled and 3ds exemption fields within the 3ds object { "source" { "type" "token", "token" "tok f6z4mnoububudpqnvhwa5ff27u" }, "amount" 2000, "currency" "usd", "3ds" { "enabled" false, "exemption" "low value" }, "success url" "https //example com/payments/success", "failure url" "https //example com/payments/failure" }{ "source" { "type" "token", "token" "tok f6z4mnoububudpqnvhwa5ff27u" }, "amount" 2000, "currency" "usd", "3ds" { "enabled" true, "exemption" "low value" }, "success url" "https //example com/payments/success", "failure url" "https //example com/payments/failure" } authorization with idci results to provide the bank with the idci results, it is necessary to modify your integration with the payment service provider (psp) this adjustment involves including the verificationmethod verificationspecificdata threeds dstransid , verificationmethod verificationspecificdata threeds authenticationvalue and verificationmethod verificationspecificdata threeds ecivalue values from forter order response https //docs forter com/reference/v3order in the psp authorization request examples for common psps adyen map the previously mentioned forter fields to the dstransid , cavv and eci fields within the adyen authorize request https //docs adyen com/api explorer/payment/68/post/authorise#request mpidata dstransid braintree map the previously mentioned forter fields to the dstransactionid , cavv and eciflag fields within the braintree transaction sale request https //developer paypal com/braintree/docs/reference/request/transaction/sale#three d secure pass thru ds transaction id authorization with network token & cryptogram braintree https //developer paypal com/braintree/docs/reference/request/transaction/sale/node#credit card network tokenization attributes https //developer paypal com/braintree/docs/reference/request/transaction/sale/node#credit card network tokenization attributes adyen https //docs adyen com/api explorer/payment/68/post/authorise#request mpidata tokenauthenticationverificationvalue https //docs adyen com/api explorer/payment/68/post/authorise#request mpidata tokenauthenticationverificationvalue cybersource https //developer cybersource com/api reference assets/index html#payments https //developer cybersource com/api reference assets/index html#payments see the tokenizedcard object checkout com https //api reference checkout com/#operation/requestapaymentorpayout https //api reference checkout com/#operation/requestapaymentorpayout to see the attributes, set the type to network token in the source drop down list