verify3dSecure
Use the verify3dSecure method to verify a result from a 3dSecure redirect from the initiatePayment method. For more information, see initiatePayment.
For general information about the payment flow for 3D Secure, see Payment flow process (Processor API).

Test URL | https://testgateway.altapaysecure.com/merchant/API/<method> |
Production URL | https://<YourShopName>.altapaysecure.com/merchant/API/<method> |

Required parameters for 3D Secure v2 (3DSecureV2)
Parameter | Description | Type |
---|---|---|
transactionId | The id returned from the initiatePayment call | string |
3DSecureV2[3ds_data] | Known parameter being sent from the authentication | string |
3DSecureV2[*] | Additional parameters that might be sent through the flow. * should be replaced with the parameter name given | string |
Required parameters for 3D Secure (3D Secure)
Parameter | Description | Type |
---|---|---|
transactionId | The id returned from the initiatePayment call | string |
3DSecureRegular[paRes] | The response received from the issuer bank | string |
3DSecureRegular[MD] | The response received from the issuer bank | string |
Required parameters for 3D Secure (Dankort 3D Secure by Nets)
Parameter | Description | Type |
---|---|---|
transactionId | The id returned from the initiatePayment call | string |
3DSecureNets[PostingID] | The ACS generated unique transaction identifier | string{26} |

The table shows the most pertinent response values for the method. For a complete list of API response parameters, see API Response structure (XML).
Parameter | Description |
---|---|
Result |
The result of the request, for example:
|
RedirectResponse | For cards enrolled with 3D Secure v2, the redirect response contains a URL you must redirect your customer to, and also includes a set of POST parameters you need to include in the redirect call. |
Transactions | Contains a set of Transaction elements, each describing the relevant transactions. For more information, see Transaction. |
|
The result of a 3D Secure verification using the verify3dSecure method.
|

Minimal GET
https://<YourShopName>.altapaysecure.com/processor/API/verify3dSecure/?transactionId=62345&3DSecureRegular[paRes]=VGhpcyBptyBhwiBleQFtcCxlIFBhUmVx&3DSecureRegular[MD]=af3703e5-09ad-4bbe-b130-976e39280f7a
XML response for a successful verification
<?xml version="1.0" encoding="utf-8" ?> <APIResponse version="20170228"> <Header> <Date>2020-09-29T12:34:56+02:00</Date> <Path>API/verify3dSecure</Path> <ErrorCode>0</ErrorCode> <ErrorMessage></ErrorMessage> </Header> <Body> <Result>Success</Result> <Transactions> <Transaction> <TransactionId>1</TransactionId> <PaymentId>ccc1479c-37f9-4962-8d2c-662d75117e9d</PaymentId> <CardStatus>Valid</CardStatus> <CreditCardToken>93f534a2f5d66d6ab3f16c8a7bb7e852656d4bb2 </CreditCardToken> <CreditCardMaskedPan>411111******1111</CreditCardMaskedPan> <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult> <LiableForChargeback>Merchant</LiableForChargeback> <BlacklistToken>4f244dec4907eba0f6432e53b17a60ebcf51365e </BlacklistToken> <ShopOrderId>myorderid</ShopOrderId> <Shop>AltaPay Shop</Shop> <Terminal>AltaPay Test Terminal</Terminal> <TransactionStatus>captured</TransactionStatus> <ReasonCode>NONE</ReasonCode> <MerchantCurrency>978</MerchantCurrency> <MerchantCurrencyAlpha>EUR</MerchantCurrencyAlpha> <CardHolderCurrency>978</CardHolderCurrency> <CardHolderCurrencyAlpha>EUR</CardHolderCurrencyAlpha> <ReservedAmount>2.34</ReservedAmount> <CapturedAmount>0.00</CapturedAmount> <RefundedAmount>0</RefundedAmount> <RecurringDefaultAmount>0</RecurringDefaultAmount> <CreatedDate>2010-09-28 12:34:56</CreatedDate> <UpdatedDate>2010-09-28 12:34:56</UpdatedDate> <PaymentNature>CreditCard</PaymentNature> <PaymentNatureService name="TestAcquirer"> <SupportsRefunds>true</SupportsRefunds> <SupportsRelease>true</SupportsRelease> <SupportsMultipleCaptures>true</SupportsMultipleCaptures> <SupportsMultipleRefunds>false</SupportsMultipleRefunds> </PaymentNatureService> </Transaction> </Transactions> </Body> </APIResponse>
XML response for a verification requiring a redirect (3DSecure V2)
<?xml version="1.0" encoding="utf-8" ?> <APIResponse version="20170228"> <Header> <Date>2020-09-29T12:34:56+02:00</Date> <Path>API/verify3dSecure</Path> <ErrorCode>0</ErrorCode> <ErrorMessage></ErrorMessage> </Header> <Body> <Result>3dSecure</Result> <RedirectResponse> <Url>https://<YourShopName>.altapaysecure.com/eCommerce/API/emvcoThreeDSecure/authenticate/c68887ed-4db3-4017-b5fd-5c70aa245e89</Url> <Method>POST</Method><Data /> <FlowType>3DSecureV2</FlowType> </RedirectResponse> <Transactions> <Transaction> <TransactionId>1</TransactionId> <PaymentId>ccc1479c-37f9-4962-8d2c-662d75117e9d</PaymentId> <CardStatus>Valid</CardStatus> <CreditCardToken>93f534a2f5d66d6ab3f16c8a7bb7e852656d4bb2 </CreditCardToken> <CreditCardMaskedPan>411111******1111</CreditCardMaskedPan> <ThreeDSecureResult>Not_Applicable</ThreeDSecureResult> <LiableForChargeback>Merchant</LiableForChargeback> <BlacklistToken>4f244dec4907eba0f6432e53b17a60ebcf51365e </BlacklistToken> <ShopOrderId>myorderid</ShopOrderId> <Shop>AltaPay Shop</Shop> <Terminal>AltaPay Test Terminal</Terminal> <TransactionStatus>threeds2_reservation_challenge_started</TransactionStatus> <ReasonCode>NONE</ReasonCode> <MerchantCurrency>978</MerchantCurrency> <MerchantCurrencyAlpha>EUR</MerchantCurrencyAlpha> <CardHolderCurrency>978</CardHolderCurrency> <CardHolderCurrencyAlpha>EUR</CardHolderCurrencyAlpha> <ReservedAmount>2.34</ReservedAmount> <CapturedAmount>0.00</CapturedAmount> <RefundedAmount>0</RefundedAmount> <RecurringDefaultAmount>0</RecurringDefaultAmount> <CreatedDate>2010-09-28 12:34:56</CreatedDate> <UpdatedDate>2010-09-28 12:34:56</UpdatedDate> <PaymentNature>CreditCard</PaymentNature> <PaymentNatureService name="TestAcquirer"> <SupportsRefunds>true</SupportsRefunds> <SupportsRelease>true</SupportsRelease> <SupportsMultipleCaptures>true</SupportsMultipleCaptures> <SupportsMultipleRefunds>false</SupportsMultipleRefunds> </PaymentNatureService> </Transaction> </Transactions> </Body> </APIResponse>