Интеграция сервиса оплаты на сайт через API (Тинькофф-Тильда)

Клиент хочет подключить новый сервис оплаты Долями от Тинькофф (шаблона для интеграции сервиса нет, необходимо сделать вручную). Суть действия - на сайте (собран на Тильда) необходимо добавить кнопку (через HTML-код), при нажатии на которую формируется заявка в банк. Насколько я поняла из инструкции Тинькофф, для этого необходимо создать запрос внутренним методом Create (или CreateDemo для тестовой заявки) с использованием API. Ссылка на инструкцию - https://forma.tinkoff.ru/docs/credit/api/join/ Инструкция по методу CreateDemo - https://forma.tinkoff.ru/docs/credit/help/methods/?type=api&method=create-demo У Тинькофф есть примеры кнопок, скриптов для работы с событиями заявки и др. - https://forma.tinkoff.ru/docs/credit/examples/ Описание метода Create непосредственно для сервиса Долями - https://dolyame.ru/develop/help/api/?method=create

Я понимаю, как добавить кнопку, но не понимаю, как именно вызвать необходимый метод при нажатии на кнопку. Если кто-нибудь сможет объяснить, как это происходит - буду крайне признательна.

<script src="https://forma.tinkoff.ru/static/onlineScript.js"></script>
<!--скрипт для вызова внутренних методов Тинькофф-->
<script src="https://forma.tinkoff.ru/api/partners/v2/orders/create-demo"></script>
<!-- ссылка на метод CreateDemo из инструкции -->

<!-- подклюение npm-пакета Тинькофф -->
<script>
  import tinkoff from '@tcb-web/create-credit';

  tinkoff.createDemo({
    shopId: 'SHOP_ID',
    showcaseId: 'SHOWCASE_ID',
    items: [{
      name: 'йога-пробуждение на 2 месяца',
      price: 10000,
      quantity: 1
    }, ],
    sum: 10000
  });
</script>

<!-- шаблон скрипта для работы с событиями заявки -->
<script>
  tinkoff.methods.on(tinkoff.constants.SUCCESS, onMessage);
  tinkoff.methods.on(tinkoff.constants.REJECT, onMessage);
  tinkoff.methods.on(tinkoff.constants.CANCEL, onMessage);

  function onMessage(data) {
    switch (data.type) {
      case tinkoff.constants.SUCCESS:
        console.log('SUCCESS', data.meta.iframe.url);
        break;
      case tinkoff.constants.REJECT:
        console.log('REJECT', data.meta.iframe.url);
        break;
      case tinkoff.constants.CANCEL:
        console.log('CANCEL', data.meta.iframe.url);
        break;
      default:
        return;
    }
    tinkoff.methods.off(tinkoff.constants.SUCCESS, onMessage);
    tinkoff.methods.off(tinkoff.constants.REJECT, onMessage);
    tinkoff.methods.off(tinkoff.constants.CANCEL, onMessage);
    data.meta.iframe.destroy();
  }
</script>
<!-- кнопка для отправки заявки -->
<button type="button" method="post" class="TINKOFF_BTN_YELLOW TINKOFF_SIZE_M" onclick="tinkoff.createDemo(
{
  sum: 10000,
  items: [{name: 'йога-пробуждение на 2 месяца', price: 10000, quantity: 1}],
  demoFlow: 'sms',
  shopId: 'SHOP_ID',
  showcaseId: 'SHOWCASE_ID',
},
{view: 'modal'}
  )">Оплатить Долями</button>


Ответы (1 шт):

Автор решения: my372617

...как именно вызвать необходимый метод при нажатии на кнопку.

Так и вызвать - нажать на кнопку.

Метод createDemo() вызывается при клике (onclick) на кнопку:

onclick="tinkoff.createDemo(...)";
→ Ссылка