Я пытаюсь использовать 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 записей, которые, я считаю, не так уж и серьезны, так как я уверен, что смогу обойти это, выполнив запрос, проверив, есть ли еще, и если да, то проверьте дату последней и просмотрите прошлое. что.
Было бы неплохо, однако, получить все эти транзакции более быстрым и простым способом с информацией, которая мне нужна, если это возможно. Заранее спасибо.
Итак, я думаю, что мой вопрос сводится к - «Как я могу получить заметку / заметку, которая включена в платеж?»