Tax summary webhookが事業者情報を含むようになりました

ShopifyのAPIバージョン2026-01より、税務パートナーアプリのためのtax_summaries/create webhookが、事業者の法人情報を含むようになりました。この追加が、取引を担当する法人エンティティについての詳細情報を提供し、精確な税計算を可能にします。

技術的課題と現状分析

これまでのShopifyのAPIでは、取引を担当する法人エンティティに関する詳細情報が含まれていませんでした。そのため、税計算の精度が低くなる可能性がありました。また、事業者の詳細情報を外部システムやサービスと共有する際にも手間が発生していました。

具体的な技術的ソリューションの提案

新たに追加されたmerchant_business_entityフィールドは、税務サマリーのルートレベルに位置します。このフィールドには以下の詳細情報が含まれます。

  • id: 事業エンティティのグローバルID(形式: gid://shopify/BusinessEntity/{id}
  • company_name: 事業エンティティの法人名
  • display_name: 事業エンティティの表示名
  • address: 事業エンティティの住所。以下の情報が含まれます:
    • 州・県
    • 住所ライン
    • 市区町村
    • 郵便番号
    • 会社名

このフィールドはオプショナルで、事業者がShopifyストアに法人エンティティを設定した場合にのみ存在します。

実装手順とコード例

APIバージョン2026-01より前のwebhookの構造は以下のとおりでした。

{
  "summary": {
    "idempotent_key": "abc123",
    "shop": { ... },
    "order_details": { ... }
  }
}

APIバージョン2026-01より後のwebhookの構造は以下のとおりです。新たにmerchant_business_entityフィールドが追加されています。

{
  "summary": {
    "idempotent_key": "abc123",
    "shop": { ... },
    "order_details": { ... },
    "merchant_business_entity": {
      "id": "gid://shopify/BusinessEntity/12345",
      "company_name": "Acme Corporation",
      "display_name": "Acme Corp",
      "address": {
        "country": "CA",
        "province": "ON",
        "address1": "123 Main St",
        "city": "Toronto",
        "zip": "M5V 2T6",
        "company": "Acme Corporation"
      }
    }
  }
}

パフォーマンス・コスト分析

新たに追加されたmerchant_business_entityフィールドはオプショナルであり、存在する場合でもデータ量は少ないため、パフォーマンスやコストへの影響はほぼありません。しかし、取引を担当する法人エンティティに関する正確な情報が得られることで、税務計算の精度が向上し、法的リスクの低減につながります。

実装時の注意点・ベストプラクティス

新たに追加されたフィールドはオプショナルです。そのため、このフィールドを利用する処理を実装する際には、フィールドが存在しない場合の処理も考慮する必要があります。

次のステップ・発展案

今回の変更で、事業者の法人エンティティに関する詳細情報がwebhookに含まれるようになりました。この情報を利用して、税務計算の精度を向上させたり、外部システムとの連携を強化するなど、さまざまな改善が可能です。

参考記事: Tax summary webhook now includes merchant business entity information