Невозможно создать подписку с помощью Braintree Payment Nonce

Я использую Braintree Payment Nonce для создания повторяющегося запроса на подписку. Приведенный ниже код - это то, что мне нужно для создания подписки. Я использую Payment Nonce, полученный от клиента. Но запрос на подписку завершается ошибкой с сообщением «Ононс метода оплаты недействителен».

Любая помощь/указатели будут высоко оценены.

SubscriptionRequest request = new SubscriptionRequest()
                .paymentMethodNonce(customer.getPaymentNonce())
                .planId(customer.getPlan().getBraintreePlanId());
Result<Subscription> result = getGateway().subscription().create(request);

person ronsi    schedule 27.07.2014    source источник


Ответы (1)


Я работаю в Braintree. Я бы посоветовал вам обратиться в нашу службу поддержки, если у вас есть дополнительные вопросы.

К сожалению, ошибка проверки "Payment method nonce is invalid" в настоящее время не задокументирована; это должно быть исправлено в ближайшее время.

Эта ошибка означает, что одноразовый номер не может быть найден, так как он не существует, заблокирован, уже используется, не указывает на карту из хранилища и т. д. В вашем примере customer.getPaymentNonce(), скорее всего, не возвращает действительный одноразовый номер метода оплаты. Убедитесь, что он был создан с идентификатором клиента и помещен в хранилище, и что вы не пытаетесь использовать один и тот же одноразовый номер более одного раза.

person agf    schedule 29.07.2014
comment
Спасибо. Да, я это понял. Но большое спасибо. У меня есть еще один вопрос по API Braintree, который я разместил по указанному ниже адресу. Было бы очень признательно, если бы вы могли найти время, чтобы ответить на него. Спасибо еще раз. stackoverflow .com/questions/25148517/ - person ronsi; 06.08.2014
comment
@agf Я все еще вижу это сообщение об ошибке "Payment method nonce is invalid". Есть новости по этому поводу? - person java_dude; 15.05.2015
comment
@java_dude Вам необходимо связаться с нашей службой поддержки, чтобы они могли изучить особенности вашего дела. - person agf; 15.05.2015
comment
@agf Я буду. Поддержка была потрясающей. Спасибо. - person java_dude; 15.05.2015
comment
@agf извините, что спрашиваю о другом. Как мы можем узнать, что клиент оплачивает с помощью Paypal или кредитной карты? - person Parag Chauhan; 20.11.2015
comment
@ParagChauhan Однократный способ оплаты, который вы получаете, имеет атрибут type или эквивалентный метод. См. developers.braintreepayments.com/reference/response/ для пример. - person agf; 20.11.2015
comment
В java-библиотеке braintree-java-2.63.0 класс Customer не имеет метода: getPaymentNonce - person Ed J; 17.06.2016
comment
@EdJ Это метод для некоторого объекта, созданного человеком, задающим вопрос, а не для объекта Braintree. После того, как у вас есть клиент с защищенным способом оплаты, вам не нужен одноразовый номер — вы можете взимать " rel="nofollow noreferrer">клиент или метод оплаты напрямую. - person agf; 19.06.2016