Авторизація

Авторизація

Тестове та робоче середовище

POST        https://ecg.test.upc.ua/go/service/02

Тестове середовище

 

POST        https://secure.upc.ua/go/service/02

Робоче середовище

 

<Authorization> обов'язково включає елемент <PayData>, який містить в собі обов'язковий елемент <Invoice> і <Card>, а також опціональний <PARes>

Коли в запиті передається значення CAVV (Cardholder Authentication Verification Value) операція вважається повністю захищеною.

OrderID - ідентифікатор замовлення, генерується на боці торговця. Параметр має бути унікальним для кожного запиту, винятками можуть бути ситуації, коли:

  • перша операція - неуспішна, торговець отримав відмову, в такому разі він може ініціювати новий платіж з тим же значенням OrderID

  • перша операція - успішна, але сума другої операції відрізняється, в такому разі мерчант може ініціювати новий платіж з тим же значенням OrderID, але вже з іншою сумою

Приклади запитів/відповідей:

Запит з використанням 3DSecure даних
<?xml version="1.0" encoding="UTF-8"?> <ECommerceConnect xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://secure.upc.ua/go/pub/schema/xmlpay-1.24.xsd"> <Message id="123" version='1'> <XMLPayRequest> <RequestData> <MerchantID>1750000</MerchantID> <TerminalID>E1750000</TerminalID> <Transactions> <Transaction> <Authorization> <PayData> <Invoice> <OrderID>131222</OrderID> <Date>29092021140000</Date> <TotalAmount>1000</TotalAmount> <Currency>980</Currency> <Description>Rec#15</Description> </Invoice> <Card> <CardNum>4999999999990011</CardNum> <ExpYear>2050</ExpYear> <ExpMonth>12</ExpMonth> <CVNum>123</CVNum> </Card> <PARes> <Status>Y</Status> <CAVV>AGMBAjESZCRgAAAABxJkAAAAAAA=</CAVV> <ECI>05</ECI> <EMV3ds> <DServerTransID>5ec68480-265e-48fa-b8b2-94f66b1e7259</DServerTransID> </EMV3ds> </PARes>    <Ref3>https://upc.ua</Ref3> </PayData> </Authorization> </Transaction> </Transactions> </RequestData> </XMLPayRequest> </Message> </ECommerceConnect>
Відповідь
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <ECommerceConnect xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://secure.upc.ua/go/pub/schema/xmlpay-1.29.xsd"> <Message id="123" version="1"> <XMLPayResponse> <ResponseData> <MerchantID>1750000</MerchantID> <TerminalID>E1750000</TerminalID> <TransactionResults> <TransactionResult> <TranCode>000</TranCode> <ApprovalCode>386646</ApprovalCode> <Rrn>234717642614</Rrn> <Comment>Approved</Comment> <CVResult>M</CVResult> <HostCode>000</HostCode> </TransactionResult> </TransactionResults> </ResponseData> </XMLPayResponse> </Message> <Signature></Signature> </ECommerceConnect>
Запит без використанням 3DSecure даних
<?xml version="1.0" encoding="UTF-8"?> <ECommerceConnect xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://secure.upc.ua/go/pub/schema/xmlpay-1.24.xsd"> <Message id="123" version='1'> <XMLPayRequest> <RequestData> <MerchantID>1750000</MerchantID> <TerminalID>E1750000</TerminalID> <Transactions> <Transaction> <Authorization> <PayData> <Invoice> <OrderID>1312222</OrderID> <Date>29092021140000</Date> <TotalAmount>1000</TotalAmount> <Currency>980</Currency> <Description>Rec#15</Description> </Invoice> <Card> <CardNum>4999999999990011</CardNum> <ExpYear>2050</ExpYear> <ExpMonth>12</ExpMonth> <CVNum>123</CVNum> </Card> </PayData> </Authorization> </Transaction> </Transactions> </RequestData> </XMLPayRequest> </Message> </ECommerceConnect>

 

Відповідь
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <ECommerceConnect xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://secure.upc.ua/go/pub/schema/xmlpay-1.29.xsd"> <Message id="123" version="1"> <XMLPayResponse> <ResponseData> <MerchantID>1750000</MerchantID> <TerminalID>E1750000</TerminalID> <TransactionResults> <TransactionResult> <TranCode>000</TranCode> <ApprovalCode>727121</ApprovalCode> <Rrn>234717641579</Rrn> <Comment>Approved</Comment> <CVResult>M</CVResult> <HostCode>000</HostCode> </TransactionResult> </TransactionResults> </ResponseData> </XMLPayResponse> </Message> <Signature></Signature> </ECommerceConnect>

Обробка м'яких відмов для EMVCo 3-ds Attempts

 

Якщо транзакція відхилена за допомогою TranCode “130” та HostCode “010”, це означає, що транзакція “м’яко відхилена” і вимагає надійної автентифікації клієнта, її потрібно повторити з challenge flow.

 

Продавець / PSP повинен повторити спробу з автентифікацією 3DS1, якщо відповідь автентифікації 3DS 2.x має статус транзакції A (спроби) і продавець зареєстрований у 3DS1. Статус транзакції буде використовуватися MasterCard Smart Authentication Stand-In, коли запит автентифікації EMV 3DS не може бути затверджений або коли картка не зареєстрована для EMV 3DS, і в цьому випадку, повторна спроба автентифікації 3DS1, швидше за все, буде затверджена, що призводить до вищих ставок затвердження дозволів.

Звертаємо увагу: усі запити до платіжної системи повинні використовувати кодування UTF-8. Це є обов’язковою вимогою для коректної обробки даних.