AlliancePay
🇺🇦 Українська
🇺🇦 Українська
  • E Commerce платформа AlliancePay v2.39.0
  • Аутентифікація
  • Криптування даних
  • Авторизація
  • Використання авторизаціїного токену
  • Опис роботи з ключами
    • Приклад PURCHASE колекції
    • Приклад А2С колекції
  • Платіжні методи H2H
    • PURCHASE
      • Запит проведення PURCHASE Крок 1
      • Запит проведення PURCHASE Крок 2
    • A2C
    • C2A
      • Запит проведення C2A Крок 1
      • Запит проведення C2A Крок 2
    • ApplePay decrypted
      • PURCHASE
        • Запит проведення платежу Крок 1
        • Запит проведення платежу Крок 2 (3DS)
      • C2A
        • Запит проведення C2A Крок 1
        • Запит проведення c2a Крок 2 (3DS)
    • ApplePay encrypted
      • Запит підтримки aPay на сторінці
      • Запит отримання данних мерчанта aPау
      • Запит валідації мерчанта
      • Запит встановлення сесії в aPау
      • Запит проведення платежу
    • GooglePay™ decrypted
      • PURCHASE
        • Запит проведення purchase Крок 1
        • Запит проведення purchase Крок 2 (3DS)
      • C2A
        • Запит проведення C2A Крок 1
        • Запит проведення c2a Крок 2 (3DS)
    • GooglePay™ encrypted
      • Докуменація GooglePay™
      • Запит підтримки GooglePay™ на сторінці
      • Запит отримання данних мерчанта GooglePay™
      • Запит проведення платежу
    • REFUND
    • TOKEN
      • PURCHASE
        • Запит проведення платежу по токену Крок 1
        • Запит проведення платежу по токену 3DS Крок 2
      • C2A
        • Запит проведення платежу по токену Крок 1
        • Запит проведення платежу по токену 3DS Крок 2
      • Запит створення токену
      • Запит отримання токену по customerId
      • Запит отримання даних токену
      • Запит зміни статуса токену
      • Статуси токена
    • Account Verification
      • Запит верифікації картки Крок 1
      • Запит верифікації картки Крок 2
    • Отримання даних
      • по OPERATION_ID
      • по merchantRequestId
    • Отримання балансу
    • Callback
  • Платіжні методи HPP
    • PURCHASE
      • Створення замовлення
      • Отримання даних по замовленню
    • REFUND
    • Callback
    • Статуси замовлення
  • Платіжні віджети для CMS
    • OpenCart
      • Інструкція по встановленню
      • Функціонал та опис платіжного модуля
      • Структура бази даних
  • Довідники
    • Статус транзакції
    • Тест кейси
    • Коди помилок
    • Значення actionCode, responseCode
    • Ліміти
    • Інструкція звірки по реєстрам
      • Опис полів в реєстрах
    • WhiteListing IP-адрес та URL-адрес
  • Історія змін
Powered by GitBook
On this page
  1. Платіжні методи H2H
  2. ApplePay encrypted

Запит валідації мерчанта

Запит через сервер проксі до сервера apple pay для отримання валідації мерчанта

fetchAppleSessionAPI та purchaseApplePayAPI - функції які викликають API, використовуйте свої функції для роботи з апі, або fetch

Нижче описано приклад обробника події кліку на кнопку оплати через ApplePay:


const onApplePayButtonClicked = async () => {
    // Додаткова перевірка на те чи підтримує браузер епл пей
    if (!window.ApplePaySession) {
      return;
    }
    
    // Обʼєкт для створення сесії
    const request = {
      countryCode: 'UA', 
      currencyCode: 'UAH',
      merchantCapabilities: ['supports3DS'],
      supportedNetworks: ['visa', 'masterCard'],
      total: {
        label: 'PoC Merchant Apple Pay', // назва мерчанта
        type: 'final',
        amount: amount.toString(), // сума транзакції
      },
    };

    // Створення сесії
    const session = new window.ApplePaySession(3, request);

    session.onvalidatemerchant = async (event: any) => {
      try {
        // Виклик запиту для створення сесії https://docs.merchant.alb.ua/platizhni-metodi-h2h/applepay-encrypted/zapit-vstanovlennya-sesiyi-v-apau
        const response = await fetchAppleSessionAPI(event.validationURL, applePayMercantId, { deviceId, refreshToken });

        session.completeMerchantValidation(response.applePaySessionData);
      } catch (error) {
        // обробка помилки запиту для створення сесії
      }
    };

    session.onshippingmethodselected = () => {
      const newTotal = {
        label: 'PoC Merchant Apple Pay', // назва мерчанта
        type: 'final',
        amount: amount.toString(), // сума транзакції
      };
      session.completeShippingMethodSelection(window.ApplePaySession.STATUS_SUCCESS, {}, newTotal);
    };

    // подія коли користувач успішно вибрав картку для оплати
    session.onpaymentauthorized = async (event: any) => {

      const result = {
        status: window.ApplePaySession.STATUS_SUCCESS,
      };
      
      session.completePayment(result);
      
      try {
        // виклик запиту проведення платежу https://docs.merchant.alb.ua/platizhni-metodi-h2h/applepay-encrypted/zapit-provedennya-platezhu
        const response = await purchaseApplePayAPI(
          {
            paymentToken: event.payment.token,
            // інші дані які потрібні для виклику 
            
          }
          { deviceId, refreshToken, serverPublicKey }
        );
        
      } catch (error) {
         // обробка помилки запиту для проведення платежу
      }
    };

    session.begin();
  };
PreviousЗапит отримання данних мерчанта aPауNextЗапит встановлення сесії в aPау

Last updated 7 months ago