Step-by-step integration guide for secure payment authentication
Perform additional stepUp challenge through Cardinal Commerce
Request to CMPI Lookup API:
<CardinalMPI>
<Algorithm>SHA-256</Algorithm>
<AlternateAuthenticationMethod>80</AlternateAuthenticationMethod>
<Amount>1234</Amount>
<BillAddrPostCode>12345</BillAddrPostCode>
<BillAddrState>CA</BillAddrState>
<BillingAddress1>123 Main St</BillingAddress1>
<BillingAddress2>Apt 4B</BillingAddress2>
<BillingCity>Anytown</BillingCity>
<BillingCountryCode>840</BillingCountryCode>
<BillingFirstName>John</BillingFirstName>
<BillingFullName>John Doe</BillingFullName>
<BillingLastName>Doe</BillingLastName>
<BillingPostalCode>12345</BillingPostalCode>
<BillingState>CA</BillingState>
<BrowserColorDepth id="browserInfo.colorDepth"></BrowserColorDepth>
<BrowserHeader id="browserInfo.acceptHeader"></BrowserHeader>
<BrowserJavaEnabled id="browserInfo.javaEnabled"></BrowserJavaEnabled>
<BrowserLanguage id="browserInfo.language"></BrowserLanguage>
<BrowserScreenHeight id="browserInfo.screenHeight"></BrowserScreenHeight>
<BrowserScreenWidth id="browserInfo.screenWidth"></BrowserScreenWidth>
<BrowserTimeZone id="browserInfo.timeZone"></BrowserTimeZone>
<ChallengeIndicator>03</ChallengeIndicator>
<CardExpMonth>02</CardExpMonth>
<CardExpYear>2030</CardExpYear>
<CardNumber>4761120010000492</CardNumber>
<CurrencyCode>840</CurrencyCode>
<DFReferenceId>87f635a1-287e-487d-aa8e-8085c2061f01</DFReferenceId>
<DeviceChannel>browser</DeviceChannel>
<Email>test.user@example.com</Email>
<IPAddress id="browserInfo.ipAddress"></IPAddress>
<Identifier>582e0a2033fadd1260f990f6</Identifier>
<MobilePhone>1234567890</MobilePhone>
<MsgType>cmpi_lookup</MsgType>
<OrderNumber>order-0001</OrderNumber>
<OrgUnit>582be9deda52932a946c45c4</OrgUnit>
<ShippingAddress1>123 Main St</ShippingAddress1>
<ShippingAddress2>Apt 4B</ShippingAddress2>
<ShippingCity>Anytown</ShippingCity>
<ShippingCountryCode>840</ShippingCountryCode>
<ShippingPostalCode>12345</ShippingPostalCode>
<ShippingState>CA</ShippingState>
<Signature>e+dK997NthcHmMMnLJzYFi+ckH9YR23izlld8jp2c6U=</Signature>
<Timestamp>1786880097063</Timestamp>
<TransactionType>C</TransactionType>
<UserAgent id="browserInfo.userAgent"></UserAgent>
<Version>1.7</Version>
</CardinalMPI>
Response from Cardinal API:
<CardinalMPI><DataOnly>No</DataOnly><ErrorNo>1001</ErrorNo><TransactionId>v2go8DCcEZLe6UeZUE31</TransactionId><Payload></Payload><ErrorDesc>Error Processing Message Request</ErrorDesc><Cavv></Cavv><PAResStatus></PAResStatus><Enrolled>U</Enrolled><EciFlag>07</EciFlag><ACSUrl></ACSUrl><CardBin>476112</CardBin><ReasonDesc>A message element required as defined in Table A.1 is missing from the message. browserLanguage,browserUserAgent,browserAcceptHeader,</ReasonDesc><CardBrand>VISA</CardBrand><Amount>1234</Amount><ThreeDSVersion>2.2.0</ThreeDSVersion><ReasonCode>201</ReasonCode><CurrencyCode>840</CurrencyCode><OrderId>8001296565535321</OrderId><ChallengeRequired></ChallengeRequired><SignatureVerification></SignatureVerification></CardinalMPI>
The following payload contains details for the stepUp challenge:
This is the complete, encoded JWT token that is posted to the stepUp iframe:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJ2MmdvOERDY0VaTGU2VWVaVUUzMSIsImlhdCI6MTc4Njg4MDA5NywiaXNzIjoiNTgyZTBhMjAzM2ZhZGQxMjYwZjk5MGY2IiwiT3JnVW5pdElkIjoiNTgyYmU5ZGVkYTUyOTMyYTk0NmM0NWM0IiwiT2JqZWN0aWZ5UGF5bG9hZCI6dHJ1ZSwiUGF5bG9hZCI6eyJBQ1NVcmwiOltdLCJQYXlsb2FkIjpbXSwiVHJhbnNhY3Rpb25JZCI6InYyZ284RENjRVpMZTZVZVpVRTMxIn0sIlJlZmVyZW5jZUlkIjoiODdmNjM1YTEtMjg3ZS00ODdkLWFhOGUtODA4NWMyMDYxZjAxIn0.HKH-J0qFY-KVZc-D9Va5DF1cih349Al_3tHo8xT9cAI