概要
ZuoraのPlatform機能を使いこなすことで、標準機能の枠を超えたデータ管理・業務自動化・外部連携が実現できます。
- Custom Objectsで自社固有のデータをZuora上に持たせる
- Data QueryでSQLによる柔軟なデータ抽出、Audit TrailでZuora操作の追跡が可能
- REST APIとWorkflowを組み合わせることで、繰り返し業務をZuora内で自動化できます
Custom Objects — データモデルを拡張する
Zuoraの標準オブジェクトにない独自フィールド・データ構造を追加できるのがCustom Objectsです。自社ビジネス固有の情報をZuora上で管理できるようになります。
| 概念 | 説明 |
|---|
| Custom Object Definition | 独自オブジェクトのデータ構造定義(フィールド名・型など) |
| Custom Object Record | その定義に基づいて作成された実データ(インスタンス) |
| Custom Field | 標準オブジェクト(Account・Subscriptionなど)に追加する拡張フィールド |
Custom Objectの作成順序
Custom ObjectのデータアクセスはAPIまたはData Query
主なユースケース:
- AccountやSubscriptionに「担当営業ID」「契約管理番号」などの自社固有フィールドを追加
- 請求書HTMLテンプレートにカスタムデータを表示
- Data QueryでカスタムフィールドをSQLで抽出する
knowledgecenter.zuora.comknowledgecenter.zuora.com/Zuora_Platform/Extensibility/Custom_Objects
Data Query — SQLでデータを取り出す
Data QueryはSQL-92構文でZuoraのデータを非同期・読み取り専用でエクスポートできる機能です。複数オブジェクトをJOINして柔軟なデータ抽出が行えます。
Data QueryとExport ZOQL(AQuA)の比較
| Data Query | Export ZOQL(AQuA) |
|---|
| 構文 | SQL-92 | 独自クエリ言語 |
| JOIN | ✅ 複数オブジェクト対応 | ❌ 限定的 |
| カスタムオブジェクト | ✅ 対応 | ❌ 非対応 |
| 実行方式 | 非同期 | バルク非同期 |
| 同時実行上限 | 5クエリ | — |
| 暗号化 | ✅ サポート | — |
| 用途 | 複雑な抽出・JOINレポート | 大量データの一括エクスポート |
同時実行上限
暗号化サポート
対応するSQL構文
| 構文 | 用途 |
|---|
SELECT | 列の選択・集計(MIN/MAX/AVG/COUNT) |
JOIN | 複数オブジェクトの結合 |
WHERE | 条件による絞り込み |
GROUP BY / ORDER BY | グループ集計・ソート |
SHOW TABLES | 利用可能なテーブル一覧の取得 |
DESCRIBE | テーブルのカラム定義の確認 |
出力フォーマット
CSV・TSV・DSV・JSONの4形式に対応しています。
監査レポートの生成
knowledgecenter.zuora.comknowledgecenter.zuora.com/Zuora_Platform/Data/Data_Query/A_Overview_of_Data_Query
Audit Trail — 操作履歴を追跡する
Audit Trailは「誰が・いつ・何を変えたか」をZuora上で追跡できる操作ログ機能です。トラブル調査やコンプライアンス対応に使います。
| カテゴリ | 記録内容 |
|---|
| ユーザー操作 | ログイン履歴・パスワード変更 |
| 設定変更 | Product設定・Tax設定・Accounting Code変更など |
| オブジェクト操作 | Account・Subscription・Invoiceの作成/更新/削除 |
Audit TrailのレコードはData Queryを使ってSQL形式で取得します。
SELECT *
FROM AuditTrail
WHERE CreatedDate >= '2026-01-01'
ORDER BY CreatedDate DESC
knowledgecenter.zuora.comknowledgecenter.zuora.com/Zuora_Platform/System_Management/Audit_Trail/Audit_T...
Zuora API — 外部システムと繋ぐ
ZuoraはREST APIを主軸に外部システムとの連携を提供します。
HTTPメソッドの4種類
AccountオブジェクトのHTTP識別子
REST vs SOAP
| REST API | SOAP API |
|---|
| 位置づけ | 現在のメインAPI | 旧来のAPIで後方互換維持 |
| 新機能 | ✅ 継続追加 | ❌ 新機能追加なし |
| 採用方針 | 新規実装はこちら一択 | 既存システムの維持のみ |
| 通信形式 | JSON | XML |
Sandbox環境 — 本番データを使ってテストする
Sandbox環境は、本番に影響を与えずに設定やワークフローをテストするための環境です。本番環境からデータをコピー(リフレッシュ)して使います。
- 本番環境の設定・データをSandbox環境に取り込む操作を「リフレッシュ」と呼びます
- リフレッシュを行うと、Sandbox内の既存データは削除され、本番環境のデータで上書きされます
ユーザー管理とロール権限 — 誰が何をできるかを設定する
Zuoraでは、ユーザーごとに「ロール」を割り当てることで、できる操作を制限します。
- Administration画面からユーザーを招待・作成し、ロールを割り当てます
- ロールは機能ごと(Billing・Payments・Financeなど)に用意されており、必要な権限だけを組み合わせて選べます
- 標準ロールで足りない場合は、必要な権限だけを選んでカスタムロールを作成できます
最小権限の原則によるロール設計(201補足)
権限設計は「最小権限の原則」が核心です。既存の広い権限ロールを流用するのではなく、必要な権限だけを持つ新規ロールを作成してユーザーに割り当てます。たとえばBilling Analystに「Bill Run作成」「Invoice転記」「Invoice Item Adjustment作成」の3つの操作だけを許可したい場合、①Billing Analyst用の新しいユーザーアカウントを作成する、②必要な3つの権限だけを持つ新しい「Billing User」ロールを作成する、③そのロールをBilling Analystに割り当てる、という順で進めます。ほぼ全権限を持つ既存ロールを流用するのは最小権限の原則に反します。権限付与の順序は「Role作成 → User作成 → Roleの割当」です。
パスワードのSecurity Policy(201補足)
Zuoraのセキュリティポリシーで設定できるパスワード制限は、複雑さの要件(Password complexity requirement)、パスワード履歴の強制(Enforce password history)、有効期限(Password expiration)の3つです。「Maximum password length(最大長)」や「Backup policy(バックアップ方針)」はパスワードポリシーの項目として扱われません。
Tenant IDの変更権限(201補足)
Tenant IDはZuoraが発行する一意の識別子で、変更が必要な場合はZuora Customer Supportのみが対応できます。管理者であっても自分では変更できません。
Multi-Entity(複数エンティティ) — 1つのテナントで複数の事業体を管理する
Multi-Entityは、1つのZuoraテナントの中に複数の法人・事業体(エンティティ)を作り、それぞれ独立した設定で運用できる仕組みです。
- 各エンティティは、それぞれ独自のProduct Catalog・Accounting・通貨などの設定を持てます
- エンティティ間でAccountやSubscriptionを移動させることもできます(Entity Migration)
- グローバル展開している企業が、国・子会社ごとに請求ルールを分けたい場合などに使われます
Workflow — 業務プロセスを自動化する
Zuora Workflowはトリガーを起点にタスクを連鎖させて複雑な業務プロセスを自動化するノーコード/ローコードツールです。
ワークフローのトリガー4種
Workflowで自動化できる業務プロセス
Invoice GenerateタスクとBill Runの関係
タスクでできること
- Zuoraオブジェクトの読み取り・更新・作成
- Data Queryの実行(SQL結果を次のタスクに渡す)
- 外部システムへのREST APIコール
- メール通知の送信
- 承認フロー(人間によるApprove/Reject)
Pause Processing(一時停止)の動作
Workflowのバージョニング情報の取得
Workflowの主眼は反復タスクの自動化(101補足)
Zuora Workflowの中核価値は、サブスクライフサイクル上の反復タスクの自動化です。支払失敗後にサブスクリプションを一時停止するような定型処理を自動で回せます。「タスクの並び替えを自動化する」という表現や、「失敗支払のリトライを自動化する」(これは主にPayment Retryの領域)、「停止/解約のビジネス判断そのものを自動化する」といった説明は、いずれもWorkflowの主目的としては不正確です。
カスタムフィールドの拡張性(101補足)
カスタムフィールドは、ユーザーが標準オブジェクトに追加して自社固有の情報を保持・記録するものです。読み取り専用に設定することもできます。「Zuoraが提供するが有効化するまで非表示のフィールド」「Zuora提供の標準フィールドをカスタマイズしたもの」という説明はどちらも誤りです。カスタムフィールドはユーザーが新規に定義するものであり、標準フィールドの改変ではありません。
主なユースケース
| ユースケース | 流れ |
|---|
| 支払い失敗時の自動対処 | 支払い失敗イベント → リトライ → 失敗継続でメール通知 |
| 注文プロビジョニング | Order作成 → 外部システムへAPI連携 → Subscription有効化 |
| 月次レポート自動生成 | スケジュールトリガー → Data Query実行 → CSV出力・メール送信 |
knowledgecenter.zuora.comknowledgecenter.zuora.com/Zuora_Platform/Extensibility/Workflow