Postman Twinfield API запрашивает удаленные транзакции
Я пытаюсь запросить удаленные транзакции из API Twinfield. Насколько я могу понять из документации , я делаю действительный запрос с Postman, но каждый раз получаю код возврата 500 -> внутренняя ошибка сервера. Я использую следующий запрос мыла:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:twin="http://www.twinfield.com/">
<soapenv:Header>
<twin:Header>
<twin:AccessToken>{{Accescode}}</twin:AccessToken>
<twin:CompanyCode>{{Company}}</twin:CompanyCode>
</twin:Header>
</soapenv:Header>
<s:Body>
<Query i:type="a:GetDeletedTransactions" xmlns="http://www.twinfield.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:a="http://schemas.datacontract.org/2004/07/Twinfield.WebServices.DeletedTransactionsService">
<b:CompanyCode>{{Company}}</b:CompanyCode>
<b:Daybook>SomeDaybook</b:Daybook>
<b:DateFrom>2021-04-01</b:DateFrom>
<b:DateTo>2021-04-02</b:DateTo>
</Query>
</s:Body>
</s:Envelope>
настройки заголовка выглядят следующим образом:настройки заголовка
Я пробовал это только с кодом компании, так как все остальное необязательно, но это дало мне тот же результат.
Любые советы о том, как получить возврат с удаленными транзакциями?
2 ответа
В конце концов, отсутствовала XML-схема, правильный XML-конверт должен выглядеть так
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:Authentication xmlns:h="http://www.twinfield.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<AccessToken xmlns="http://schemas.datacontract.org/2004/07/Twinfield.WebServices.Shared">{{Accescode}}</AccessToken>
<CompanyCode xmlns="http://schemas.datacontract.org/2004/07/Twinfield.WebServices.Shared">{{Company}}</CompanyCode>
</h:Authentication>
</s:Header>
<s:Body>
<Query i:type="b:GetDeletedTransactions" xmlns="http://www.twinfield.com/" xmlns:a="http://schemas.datacontract.org/2004/07/Twinfield.WebServices" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:b="http://schemas.datacontract.org/2004/07/Twinfield.WebServices.DeletedTransactionsService">
<b:CompanyCode>{{Company}}</b:CompanyCode>
<b:DateFrom>2022-01-01T00:00:00</b:DateFrom>
<b:DateTo>2022-12-31T23:59:00</b:DateTo>
<b:Daybook></b:Daybook>
</Query>
</s:Body>
</s:Envelope>
ваши значения datefrom и dateto недействительны. Они не должны включать разделители дат (-). это должно работать:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:twin="http://www.twinfield.com/">
<soapenv:Header>
<twin:Header>
<twin:AccessToken>{{Accescode}}</twin:AccessToken>
<twin:CompanyCode>{{Company}}</twin:CompanyCode>
</twin:Header>
</soapenv:Header>
<s:Body>
<Query i:type="a:GetDeletedTransactions" xmlns="http://www.twinfield.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:a="http://schemas.datacontract.org/2004/07/Twinfield.WebServices.DeletedTransactionsService">
<b:CompanyCode>{{Company}}</b:CompanyCode>
<b:Daybook>SomeDaybook</b:Daybook>
<b:DateFrom>20210401000000</b:DateFrom>
<b:DateTo>20210402235959</b:DateTo>
</Query>
</s:Body>
</s:Envelope>