PayPal Sandbox - вызов CreateBillingAgreement возвращает внутреннюю ошибку (10001) - PullRequest
1 голос
/ 26 января 2012

Буду признателен за любую помощь в этом, я бегаю кругами, пробуя всевозможные комбинации с PayPal Api - но я бью по кирпичной стене.

Я пытаюсь вызвать метод CreateBillingAgreement, но каждый раз, когда я делаю это, он терпит неудачу и сообщает 10001 «внутреннюю ошибку» от PayPal в ответ. У меня есть действующий токен, и я использую версию 84.0. Я успешно вызвал SetupExpressCheckout и DoExpressCheckout, которые оба успешно выполняются, и платеж проходит. Я настраиваю будущий платеж / предварительную авторизацию на SetupExpressCheckout, и пользователь соглашается с этим без проблем.

Нужно ли менять настройки продавца в песочнице? Я называю вещи в неправильном порядке, может быть? (SetExpress, GetExpress, DoExpress, CreateBilling)?

Я хочу использовать это соглашение о выставлении счетов, чтобы разрешить ссылочную транзакцию в будущем. У меня есть тестовая учетная запись «оплата» с использованием PayPal, и я не пересылаю данные кредитной карты, оплата производится за цифровую услугу без доставки (доставка не установлена, адреса и расходы на доставку не включены). Общая цель состоит в том, чтобы предоставить кнопку повторного заказа одним нажатием, чтобы клиент не вводил никаких подробностей.

Я использую C # api в asp.net 4 или, более конкретно, я создал сервисные ссылки из песочницы paypal wsdl и использую их в asp.net.

Любая помощь приветствуется - спасибо.

Рассел.

1 Ответ

3 голосов
/ 27 января 2012

Вам не нужно вызывать CreateBillingAgreement, если вы указываете тип биллинга MerchantInitiatedBilling в своих вызовах API SetExpressCheckout и DoExpressCheckoutPayment.CreateBillingAgreement необходимо только в том случае, если вы не хотите звонить DoExpressCheckoutPayment.
Если установлено значение MerchantInitiatedBilling, DoExpressCheckoutPayment уже вернет идентификатор соглашения о выставлении счета, который можно использовать в DoReferenceTransaction.

У меня нет доступа к примеру под рукой, но я обновлю этот пост, как только я найду его для вас.

...