Интеграция подписки Paypal и исправление проблем с подпиской - PullRequest
0 голосов
/ 01 августа 2020

Я работаю с проектом angular, где мне нужно настроить платежный шлюз PayPal с созданием подписки, отменой подписки, обновлением подписки.

У меня 2 проблемы с PayPal, как описано ниже:

1) Я успешно визуализировал кнопку PayPal с кодом ниже:

index. html

<script src="https://www.paypal.com/sdk/js?client-id=client_id_here&disable-funding=credit,card&vault=true"></script>

payment.component.ts

const self = this;  
this.planId = localStorage.getItem("paypalPlanId");  //Default Plan Id

paypal.Buttons({  
  createSubscription: function (data, actions) {  
    
    return actions.subscription.create({  
      'plan_id': self.planId,
      "subscriber": {
        "name": {
          "given_name": localStorage.getItem("fullName").split(' ')[0],
          "surname": localStorage.getItem("fullName").split(' ')[1]
        },
        "email_address": localStorage.getItem("email")
      }
    });  
  },
  onApprove: function (data) {  
    console.log(data); 
    self.getSubcriptionDetails();
    self.router.navigate(CC_GLOBAL.PAYMENT_THANKS_ROUTE);
  },  
  onCancel: function (data) {  
    // Show a cancel page, or return to cart  
    console.log(data);  
  },  
  onError: function (err) {  
    // Show an error page here, when an error occurs  
    console.log(err);  
  }  

}).render(this.paypalElement.nativeElement);

Приведенный выше код работает должным образом и позволяет создать подписку. Теперь мои требования совсем другие, как указано ниже:

После нажатия кнопки paypal открывается модальное всплывающее окно, и после успешной попытки входа я могу подписаться на план.

Я также настроил методы веб-перехватчика с моей учетной записью, после успешной подписки он вызывает методы веб-перехватчика, а при вызове метода веб-перехватчика ответ возвращается с данными зарегистрированного пользователя (EMAIL, имя / фамилия) вместо указанного выше адреса электронной почты и сначала пользователя / last name.

Выше Метод createSubscription иногда работает должным образом, но иногда это не так.

Получил ссылку на приведенный выше код от официального do c PayPal.

2) План обновления Paypal REST API возвращает ошибку:

У меня есть идентификатор подписки и ссылка на него отсюда:

https://developer.paypal.com/docs/business/subscriptions/add-capabilities/revise-subscriptions/

, но возвращается ошибка ниже:

Недействительный статус подписки для действия проверки; статус подписки должен быть активным.

как я могу узнать об активном статусе, я использую аккаунт Sandbox

1 Ответ

0 голосов
/ 04 августа 2020

Здесь я провел небольшое исследование по этим вопросам и обнаружил ниже ошибки PayPal:

1) https://github.com/paypal/paypal-checkout-components/issues/1336

2 ) https://github.com/paypal/paypal-checkout-components/issues/1247#issuecomment -551066663

Тем не менее я ищу ответ на то же самое.

...