Как получить идентификаторы заказов Square для вызова BatchRetrieveORders

Я хочу получить список заказов с помощью Square API. Вызов для получения заказов - это вызов POST с массивом строк order_ids, однако я не уверен, где я могу получить эту информацию. В документах сказано, что я могу использовать конечную точку ListTransactions для получения этой информации, но я не могу найти order_id в ответе.

Документация для получения Orders находится по адресу: https://docs.connect.squareup.com/api/connect/v2#endpoint-batchretriveorders

см. пример ответа ListTransactions: https://docs.connect.squareup.com/api/connect/v2#endpoint-listtransactions

API заказов не поддерживает список заказов. Чтобы получить доступ к сведениям о заказе, вам нужно будет получить идентификатор заказа, запросив транзакции с помощью конечных точек ListTransactions и RetrieveTransaction, а затем извлекая заказ с помощью конечной точки BatchRetrieveOrders.

Ссылка: https://docs.connect.squareup.com/articles/orders-api-overview

Цель состоит в том, чтобы получить список последних транзакций/заказов, в котором точно указано, что было куплено. Модель Transactions не содержит Items, тогда как модель Orders содержит.


person Bhavik P.    schedule 10.06.2018    source источник


Ответы (1)


Объект Transaction будет включать поле order_id, если вы включили его во время запроса Charge. Если вы не передали order_id в запрос Charge, то он не появится.

Кроме того, просто для ясности, если вы используете Square Point of Sale или если вы не включили order_id ранее, но все же хотели бы просмотреть детализацию транзакций, просмотрите V1 ListPayments, который будет включать его, даже если нет order_id.

Ссылки: https://docs.connect.squareup.com/api/connect/v2#type-transaction https://docs.connect.squareup.com/api/connect/v1#get-payments

person sjosey    schedule 11.06.2018
comment
Спасибо, sjosey. У меня есть продолжение. когда я делаю вызов GET /v1/{location_id}/payments, я получаю сообщение об ошибке «Предоставленоmerchant_id» и «merchant_id» в авторизации не совпадают. Я много раз проверял, что используемые мной accessToken и locationId принадлежат одному и тому же продавцу. Я делаю что-то неправильно? - person Bhavik P.; 12.06.2018
comment
Можете ли вы предоставить немного больше информации? Я не вижу эту ошибку, какую именно ошибку вы получаете? Вы используете OAuth или пытаетесь запустить это против своей учетной записи? - person sjosey; 12.06.2018
comment
Я использую учетную запись OAuth. Вот шаги, которые я предпринял до сих пор: 1) я авторизовал продавца, используя oauth2/authorize 2) я обмениваю код на accessToken продавца 3) используя accessToken продавца, я получаю список местоположений 4) я получаю location_id, а теперь сделайте вызов, чтобы получить платежи, используя этот location_id и тот же accessToken носителя авторизации, который я использовал при получении местоположений. Вы можете написать мне по адресу [email protected], если хотите просмотреть мою учетную запись. - person Bhavik P.; 12.06.2018
comment
конечно может; ценю помощь. - person Bhavik P.; 12.06.2018