Добавление бесплатного товара $0 в сеанс Stripe Checkout

При создании сеанса Stripe для оформления заказа с использованием \Stripe\Checkout\Session::create я получаю недопустимое целое число, когда пытаюсь добавить позицию с суммой 0 долларов США (бесплатно). Я использую интеграцию на стороне сервера PHP.

Общая сумма всех других позиций превышает минимальную сумму платежа в 0,50 доллара США, и если я либо (i) удалю элемент, равный 0 долларов США, либо (ii) дам элементу сумму 0,01 доллара США, тогда все будет работать нормально и сеанс будет успешно создан.

Сценарий будет примерно таким:

1 взрослый билет по цене 10 долларов США.

1 детский билет (возраст 6+) по цене 5 долларов США

1 детский билет (до 6 лет) по цене 0,00 долларов США (БЕСПЛАТНО)

Поскольку ВСЕГО ВСЕХ позиций в этом случае будет 15,00 долларов США, что больше минимальной суммы платежа в 0,50 доллара США, все три из этих позиций должны отображаться на странице оформления заказа, включая БЕСПЛАТНЫЙ элемент по цене 0,00 долларов США.

Это ограничение со стороны Stripe, не позволяющее получить предмет за 0 долларов, или я что-то упустил?

\Stripe\Checkout\Session::create([
  'customer_email' => 'customeremail@example.com',
  'success_url' => 'https://example.com/success',
  'cancel_url' => 'https://example.com/cancel',
  'payment_method_types' => ['card'],
  'line_items' = [
    ["name"=>"Adult Ticket", "description"=>"Full price Adult Ticket", "amount"=>"1000", "currency"=>"usd", "quantity"=>"1" ],
    [ "name"=>"Child Ticket (age 6+)", "description"=>"Full price Child Ticket", "amount"=>"500", "currency"=>"usd", "quantity"=>"1" ],
    [ "name"=>"Child Ticket (under age 6)", "description"=>"FREE Child Ticket", "amount"=>"0", "currency"=>"usd", "quantity"=>"1" ]
  ]             
])

1 ответ

Решение

По словам Stripe, в настоящее время они не допускают позиции $0 в сеансе оформления заказа.

Я сделал для них запрос на добавление этой функции.

Другие вопросы по тегам