PayPal SOAP API получает счет / транзакцию с сообщением со счета

Я пытаюсь использовать API-интерфейс Paypal SOAP, изначально пробовал их REST-API, однако это тоже не оправдало ожиданий.

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

Как я уже говорил, я пробовал REST, но, похоже, в нем нет этой информации, и, в довершение всего, он возвращает только те платежи, которые были завершены через REST. Так что, если это было сделано в другом месте, они не отображаются, и все платежи осуществляются через кнопку покупки.

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

     var client = new PayPalAPIInterfaceClient();
     client.Endpoint.Address = new System.ServiceModel.EndpointAddress("https://api-3t.paypal.com/2.0/");

     var user = new UserIdPasswordType()
     {
          Username = username,
          Password = password,
          Signature = signature
     };

     var securityHeader = new CustomSecurityHeaderType();

     DateTime startDate = new DateTime(2018, 1, 1);
     DateTime endDate = new DateTime(2019, 12, 31);


     TransactionSearchReq req = new TransactionSearchReq();
     req.TransactionSearchRequest = new TransactionSearchRequestType();
     req.TransactionSearchRequest.StartDate = startDate;
     req.TransactionSearchRequest.EndDate = endDate;
     req.TransactionSearchRequest.Version = "74.0";

     var result = await client.TransactionSearchAsync(securityHeader, req);

     var output = result.TransactionSearchResponse1.PaymentTransactions.Where(i => double.Parse(i.GrossAmount.Value) > 0 && i.Type == "Payment").Select(i => new {
          GrossAmount = i.GrossAmount.Value,
          NetAmount = i.NetAmount.Value,
          FeeAmount = i.FeeAmount.Value,
          Date = i.Timestamp
     })

Это возвращает всю необходимую мне информацию (см. Select оператор в последней строке) кроме сообщения. Наконец, он возвращает только до 100 записей, которые, я считаю, не так уж и серьезны, так как я уверен, что смогу обойти это, сделав запрос, проверив, есть ли еще записи, и если да, то проверить дату последней и посмотреть мимо тот.

Было бы хорошо, однако, чтобы получить все эти транзакции быстрее и проще с информацией, которая мне нужна, если это возможно. Заранее спасибо.

Поэтому я думаю, что мой вопрос сводится к - "Как я могу получить заметку / заметку, которая включена в оплату?"

0 ответов

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