Получение токена доступа IPP и секрета доступа из обратного вызова PayPal

У меня есть веб-приложение, в котором используется стандартная корзина PayPal. Мы хотим автоматически регистрировать платежи в QB онлайн с помощью API Intuit QB, когда PayPal уведомляет наш веб-сайт о завершении платежа.

Примеры, которые я видел для получения токена доступа и секрета, инициированы пользователем. Как я могу получить их в контексте этого обратного вызова PayPal? Мне нужно, чтобы они происходили автоматически и без контекста запроса от пользователя. У меня есть некоторый базовый тестовый код, который выполняется в рамках обратного вызова PayPal.

//start a transaction
//start try block            
//set our transaction record as paid
Token = ConfigurationManager.AppSettings["appToken"];
        string consumerKey = ConfigurationManager.AppSettings["consumerKey"];
        string consumerSecret = ConfigurationManager.AppSettings["consumerSecret"];
        string companyID = ConfigurationManager.AppSettings["companyID"];
        string accessToken = "??????";
        string accessSecret = "?????";

        OAuthRequestValidator oauthValidator = new OAuthRequestValidator(accessToken, accessSecret, consumerKey, consumerSecret);
        ServiceContext context = new ServiceContext(appToken, companyID, IntuitServicesType.QBO, oauthValidator);
        DataService service = new DataService(context);
        Customer customer = new Customer();
        //just a test example. without missing tokens, i don't get here.
        customer.GivenName = "Mary";
        customer.Title = "Ms.";
        customer.MiddleName = "Jayne";
        customer.FamilyName = "Cooper";
        Customer resultCustomer = service.Add(customer) as Customer;
//complete transaction
//catch {rollback transaction}

1 ответ

Не существует автоматического способа получить токены доступа и секрет из вашего приложения. Вы должны сгенерировать их в первый раз, используя взаимодействие с пользователем (C2QB- Connect to Quickbooks), а затем сохранить их для будущего использования. Эти токены действительны в течение 6 месяцев, после чего вам нужно будет позвонить в Reconnect api, чтобы обновить токены, или снова выполнить взаимодействие C2QB, чтобы получить новые токены. https://developer.intuit.com/docs/0025_quickbooksapi/0010_getting_started/0030_integrate_your_app/disconnecting_from_quickbooks/0050_how_to_reconnect

Другие вопросы по тегам