Я пытаюсь настроить следующее с помощью Stripe:
Я создал основную учетную запись и дополнительную учетную запись. Я подключил дополнительную учетную запись к основной учетной записи через Stripe Connect. Я получил и сохранил access_token и refresh_token в конце процесса Stripe Connect.
Когда платежи сделаны, один платеж может охватывать несколько позиций. У меня есть следующий код (PHP) для обработки платежа:
Stripe_Charge::create(array(
"amount" => $amt,
"currency" => "EUR",
"source" => $stripeCardToken,
"description" => $description),
"application_fee_percent" => 0.5
),
$stripeAccessToken
);
Это помещается в цикл для каждого предмета, за который платят. Он также находится в блоке try / catch с несколькими перехватами исключений Stripe. Однако этот метод не работает без каких-либо ошибок.
Это правильный метод класса для использования?
Поле ‘source’ для токена кредитной карты?
Есть ли способ отслеживания сумм, выплаченных по нескольким товарам, без использования цикла?
Это $stripeAccessToken
access_token дополнительной учетной записи, возвращенный процессом Connect, или refresh_token? Или это Основной Аккаунт Публикуемый / Секретный ключ? Или что-то другое?
Могу ли я использовать этот формат для $ stripeAccessToken, или я должен вместо этого использовать Stripe::setApiKey($stripeAccessToken)
перед петлей?
И Мастер, и субсчет в настоящее время используют тестовую среду и фальшивую карту, но я также хотел бы протестировать реальные транзакции.
Первая проблема заключается в том, что вы пытаетесь повторно использовать карточный токен, но это одноразовое использование, поэтому после создания заряда с помощью карточного токена вы не сможете создать новый.
Если вы хотите выставить счет своему клиенту и разделить платежи между несколькими продавцами, вам нужно будет использовать общие клиенты. Это поток, который вы должны следовать в вашем случае:
В случае, если я неправильно понял, и все товары будут принадлежать одному и тому же продавцу, вам не нужно будет делать все это, и вам нужно будет следовать этому потоку:
access_token
то, что вы получили во время потока Connect, передается в качестве второго параметра в вызов API.access_token
как второй параметр снова.Других решений пока нет …