Добавить карту как external_account в управляемую учетную запись Stripe

Я пытаюсь добавить карту в качестве пункта назначения в управляемую учетную запись в соответствии с https://stripe.com/docs/api#account_create_card. Запрос звучит так:

HTTP Method                  POST
HTTP URI                     https://api.stripe.com/v1/accounts/<acct_id>/external_accounts
HTTP Protocol                HTTP/1.1

HTTP Header                  Accept : application/json
HTTP Header                  Authorization : Basic <auth_value>
HTTP Header                  Stripe-Version : 2016-07-06

HTTP Content                 application/x-www-form-urlencoded
HTTP Body                    external_account[object]=card
HTTP Body                    external_account[cvc]=121
HTTP Body                    external_account[exp_month]=11
HTTP Body                    external_account[exp_year]=2018
HTTP Body                    external_account[number]=4000056655665556
HTTP Body                    external_account[currency]=usd`

Сервер отвечает таким json:

{
  "error" : {
  "type" : "invalid_request_error",
  "message" : "Requests made on behalf of a connected account must use card tokens from Stripe.js, but card details were directly provided.",
  "param" : "external_account"
  }
}

что мне не хватает? Мы не используем stripe.js, все взаимодействие с Stripe происходит на бэкенде.


person Yar    schedule 04.08.2016    source источник
comment
Вам когда-нибудь удавалось найти решение для этого? Я столкнулся с той же проблемой и не хочу использовать Stripe.js в своем проекте. любая помощь будет оценена.   -  person David Hope    schedule 13.08.2017
comment
@DavidHope, я смутно припоминаю разговор с их сотрудником службы поддержки. Он сказал, что если взаимодействие с Stripe произойдет на бэкэнде, мы будем вынуждены использовать токены карт, потому что хранить и обрабатывать данные карты на бэкэнде может быть небезопасно.   -  person Yar    schedule 17.08.2017


Ответы (1)


вы используете данные карты и передаете их в параметр external_account, который принимает только токен карты. Чтобы использовать данные карты, просто передайте объект, параметры cvc и т. д. напрямую. не отправляйте эти данные в параметр external_account

person LAV VISHWAKARMA    schedule 10.08.2016
comment
Не могли бы вы подробнее рассказать о задействованных конечных точках? Я думал, что клиенты — это сущности, которые могут только отправлять деньги, но не получать. - person Yar; 10.08.2016
comment
вы используете данные карты и передаете их в параметр external_account, который принимает только токен карты. Чтобы использовать данные карты, просто передайте объект, параметры cvc и т. д. напрямую. не отправляйте эти данные в параметр external_account - person LAV VISHWAKARMA; 10.08.2016
comment
Что-то вроде curl https://api.stripe.com/v1/accounts/acct_18ei8DDnFIdh8uQ1 \ -u sk_test_HqgOzbe7IY6jCaJzK1xhZxxt: \ -d "external_account[object]=card&external_account[cvc]=121&external_account[exp_month]=11&external_account[exp_year]=2018&external_account[number]=4000056655665556&external_account[currency]=usd&external_account[default_for_currency]=true"? Тоже не работает - person Yar; 10.08.2016