スマレジ・デベロッパーズ・コミュニティはアーカイブされました。


これまでに投稿いただいた内容は引き続きご覧いただけます。

今後のお問い合わせはこちら

Webhookの取引が精算(レジ締め)したときに通知が飛んできている

お世話になっています。

Webhookの取引を利用しているのですが、スマレジアプリ側で精算を行ったときも action: "edited" で通知が飛んできているようです。仕様には精算時についての記載はありません。

https://www1.smaregi.dev/apidoc/#operation/webhook-transactions

通知内容としては下記のような内容となっています

{
  "contractId": "XXXXXX",
  "event": "pos:transactions",
  "action": "edited",
  "transactionHeadIds": []
}

transactionHeadIds が空なので通知そのものに情報がないのと、取引の編集と区別ができないので処理が難しいのですがどうすれば良いでしょうか?

答え

  • @watanabe

    精算を行った場合、取引ヘッダのadjustmentDateTimeが更新されるためWebhook(取引)が通知されます。

    ただし自動締め処理の場合は、取引IDが空配列となっています。

    また、取引の編集のWebhook(取引)と精算時のWebhook(取引)を見分ける完全な方法は現状ありません。

    取引一覧取得APIの更新日時from -toを利用し、確認をお願いします。