Skip to content

Выбор протокола-примера ​

English

Шесть пакетов показывают типовые виды платёжных API. Они работают со встроенным поддельным сервером, поэтому их можно попробовать без ключей аккаунта. Используйте их, чтобы:

  • сделать адаптер для своего сервера или провайдера;
  • понять, как дополнительные шаги (проверка банком, перенаправления, QR-коды) проходят через движок;
  • тестировать без настоящих данных доступа.

Для Stripe, Adyen и PayPal есть готовые адаптеры с отдельными руководствами: Stripe, Adyen, PayPal.

Найдите протокол, похожий на ваш ​

ПакетВид API
provider-pspJSON PSP — JSON API, карта или сохранённая карта, 3DS2
provider-acquiringБанк-эквайер — API банка на HTML-формах, 3DS1
provider-hppПлатёжная страница — страница оплаты на сайте банка
provider-hosted-fieldsПоля провайдера — поля карты во фрейме провайдера
provider-walletSDK кошелька — JavaScript SDK кошелька
provider-bank-transferБанковский перевод — QR-код или код оплаты

Примеры PSP и эквайера подтверждают карту. Остальные четыре ничего не собирают на вашей странице: это делает страница провайдера, фрейм, кошелёк или банковское приложение. Если API вашего провайдера похож на один из этих, это ещё не значит, что всё заработает само. Список пакетов описывает все пакеты.

Настройка и регистрация ​

ts
import { defineProvider } from '@checkout-kit/core'
import type { PspConfig } from '@checkout-kit/provider-psp'

const provider = defineProvider({
  id: 'psp',
  config: {
    baseUrl: '/api',
    acsOrigin: 'https://acs.yourbank.example',
    credentials: 'include',
  } satisfies PspConfig,
  load: () => import('@checkout-kit/provider-psp'),
})

Передайте провайдера, браузерные раннеры и хранилище в createCheckout. Файл настройки демо показывает все шесть провайдеров и адаптер кошелька.

Что у всех одинаково ​

Движок всегда идёт по шагам: создать → подтвердить → дополнительный шаг и его результат → продолжить → окончательный статус. Отличаются только инструменты, маршруты сервера и виды шагов.

  • То, что вернулось после шага, лишь привязано к этому шагу. Настоящее состояние платежа — на вашем сервере.
  • Цены, проверку владельца заказа и секретные ключи держите на сервере. Идемпотентность и смену статусов делайте атомарными.
  • Формы с полями карты в открытом виде существуют только для симулятора. В настоящем магазине принимайте платёжные данные через интеграцию вашего провайдера.

Окружение симулятора · Свой провайдер · Тестирование

Apache-2.0 · Headless-движок, адаптеры провайдеров и запускаемые примеры.