Paypal Checkout с Product_Id - PullRequest
       109

Paypal Checkout с Product_Id

0 голосов
/ 04 августа 2020

В настоящее время я использую кнопку Smart Checkout от Paypal для покупателя.

Я также слушаю уведомление Webhook.

Все работает нормально, но моя проблема в том, что у меня есть несколько продуктов, которые пользователь может купить. Поэтому мне нужно получить информацию о продукте в моем Webhook.

Есть ли способ создавать продукты в Paypal, как в Stripe, или добавлять дополнительные значения, такие как идентификатор продукта, в Checkout, чтобы я знал, какие продукт, купленный пользователем.

Я пробовал использовать его с некоторыми полями, например "item" ниже, но не смог получить к ним доступ внутри своего веб-перехватчика.

  var button = paypal.Buttons({
    fundingSource: fundingSource,
    createOrder: function(data, actions) {
  // This function sets up the details of the transaction, including the amount and line item details.
  return actions.order.create({
    purchase_units: [{
      amount: {
        currency_code: 'EUR',
        value: '0.69'
      },
      item:"product_id12345"
    }]
  });
}
  });

1 Ответ

1 голос
/ 04 августа 2020

Недопустимые поля, такие как «item», будут просто проигнорированы, поэтому вам понадобится правильно отформатированный массив предметов и разбивка цен в соответствии со спецификацией Orders V2 API. Вы можете найти длинный пример в purchase_units здесь

Нет причин, по которым ваш сервер должен ждать, пока сомнительно надежные асинхронные веб-перехватчики будут уведомлены об успешных транзакциях и информации об элементах в них. . Вместо этого переключитесь на надежную серверную интеграцию. Вот интерфейсный интерфейс для использования: https://developer.paypal.com/demo/checkout/# / pattern / server

Вам понадобятся два маршрута на вашем сервере, один для «Настроить транзакцию» и один для « Capture Transaction ', задокументированный здесь: https://developer.paypal.com/docs/checkout/reference/server-integration/

Вся необходимая вашему серверу информация о продукте / тележке может быть передана в этих вызовах fetch, а также в вызовах API заказов к PayPal ( в массив элементов и параметры разбивки необходимого количества, которые вы можете добавить сразу после того, как все остальное заработает). Это намного лучше, чем ждать перехватчика.

...