DocuWare E‑Invoicing Service は、会社などの法人を国別の電子請求書ネットワークや税務当局と接続し、準拠した電子請求書の送受信を可能にします。
DocuWare Workflow Designer は、DocuWare 内で電子請求書がどのように処理されるかを自動化し、制御します。E-Invoicing Service と組み合わせることで、ワークフローは以下のシナリオを処理します。
設定済みネットワーク経由で受信者に電子請求書を送信する
電子請求書の技術ルールおよびビジネスルールを検証する
受信した電子請求書を処理する
これらの機能は DocuWare Configurations > Collaboration > Workflow Designer で設定および使用します。Workflow Designer の概要については、Workflow Designer ヘルプを参照してください。
前提条件
E-Invoicing Service 用のワークフローを設定する前に、対象の法人に対して E-Invoicing Service が構成済みであり、ワークフローユーザーが E-Invoicing Service 設定に対する 使用 権限を持っていることを確認してください。DocuWare E-Invoicing Service を構成する方法 を参照してください。
ConfigurationName: E-Invoicing Service のセットアップ時に、各構成に一意の名前を割り当てます。この名前はワークフロー変数
ConfigurationNameとして利用可能で、Web Service アクティビティで適切な E-Invoicing Service 構成を参照するために使用されます。値が DocuWare Configurations > Integrations > E-Invoicing で定義された構成名と正確に一致していることを確認してください。
Workflow Designer における E-Invoicing Service の機能
E-Invoicing Service の機能は、DocuWare ワークフロー内から Web Service アクティビティを使用して呼び出されます。E-Invoicing Service は Workflow Designer に DocuWare E-Invoicing として事前登録されているため、URL を手動で構成する必要はありません。
機能を使用するには、Web Service アクティビティを追加し、Defined web service の下で DocuWare E-Invoicing を選択し、目的のエンドポイントを選択します。Request、HTTP Headers、HTTP Request Body の各タブを、以下に記載する各エンドポイントの説明に従って構成します。必要に応じて、Data assignment を使用してレスポンス値をドキュメントのインデックスフィールドにマップしたり、Status codes を使用して HTTP レスポンスコードの処理方法を定義したりすることもできます。
Web Service アクティビティは一度に 1 つのドキュメントを処理します。各ワークフロー実行では、1 つの電子請求書とそのドキュメントに関連するすべてのアクションが処理されます。
注: 処理と同期のロジック
DocuWare E-Invoicing Service は電子請求書を非同期で処理します。電子請求書がネットワークに送信されると、サービスはすぐにタスク ID を返しますが、実際の配信はバックグラウンドで行われます。ワークフローは即時に結果を確認することができません。代わりに、専用のステータスエンドポイントを使用して現在のステータスを待機しポーリングする必要があります。
この非同期動作はエラーメッセージにも適用されます。エラーメッセージはネットワークがリクエストを処理した後にのみ利用可能になる場合があります。
Workflow Designer における E-Invoicing 用エンドポイント
Web サービス DocuWare E-Invoicing では、以下のエンドポイントが利用可能です。
1. 電子請求書を送信する
エンドポイント: Post /v1/invoices/
DocuWare に保存された電子請求書を、受信者への配信のために設定済みのネットワークへ送信します。
HTTP Request Body パラメータ:
パラメータ | タイプ | 説明 |
|---|---|---|
| システム変数 → Document ID | DocuWare ドキュメント参照 |
| システム変数 → File Cabinet GUID | ドキュメントを格納するファイルキャビネット |
| 固定値 → | E-Invoicing Service 構成の名前 |
| インデックスフィールド → 例: Status | 請求書ステータスが書き込まれるインデックスフィールド |
| ブール値 → | ネットワークへの送信前に事前チェックを実行します。常に |
| インデックスフィールド → 例: Network ID | オプション。ネットワーク参照 ID が保存されるインデックスフィールド。 |
| 固定値 → 例: | オプション。E-Invoicing Service 構成で設定されたデフォルトのトランスポートタイプを上書きします。オプション: |
JSON HTTP Request Body:
{
"documentId": "Index field DocumentID",
"fileCabinetId": "System variables File Cabinet GUID",
"configuration": "ConfigurationName",
"statusField": "Index field Invoice_Status",
"validateInvoice": true,
"networkIdField": "(Optional) Index field Network ID",
"transportTypeCode": "(Optional) Index field TransportTypeCode"
}JSON HTTP Response Body (200):
{
"taskId": "{id}"
}configuration の値は、DocuWare Configurations > Integrations > E-Invoicing で定義された構成名と正確に一致している必要があります。DocuWare E-Invoicing Service を構成する方法 を参照してください。
2. ステータスの更新を取得する
エンドポイント: Get /v1/tasks/{id}/status
送信された電子請求書の現在の処理ステータスをネットワークから取得します。ルートの {id} は、このワークフローで以前に実行した HTTP リクエストのレスポンスで返されたタスク ID です。この値をグローバルワークフロー変数に保存して、このエンドポイントに渡します。
HTTP Headers: Accept: application/json (構成済み)
HTTP Request Body: なし
ルート構成:
ルートセグメント | 値 | 説明 |
|---|---|---|
| 固定値 | API バージョン |
| 固定値 | エンドポイントパス |
| グローバル変数 → Task ID |
|
| 固定値 | エンドポイントパス |
JSON HTTP Response Body (200):
{
"taskId": "{id}"
}3. 請求書ステータスを更新する
エンドポイント: Put /v1/invoices/status/
DocuWare に保存された受信済み電子請求書のステータスを更新します。このエンドポイントを使用して、支払確認や承認などのビジネスイベントに基づき請求書ステータスを設定します。
このエンドポイントは受信した請求書のみに適用されます。つまり、サプライヤーが発行し、受け取って対応が必要な請求書が対象です。このエンドポイントで有効なステータス値は、以下に記載されているもののみです。
発行された(送信側の)請求書の請求書ステータスは、ネットワーク経由で自動的に更新されます。送信済み請求書のステータスをワークフロー内から更新する必要はありません。発行済み請求書のステータス値は、DocuWare ワークフロー内でプロセスを制御するために使用できますが、ネットワーク内で請求書ステータスを更新するために使用しないでください。
詳細および電子請求書ステータスの参照については、DocuWare E-Invoicing Service のステータスを理解する を参照してください (coming soon)。
HTTP Headers: Accept: application/json + Content-Type: application/json (構成済み)
HTTP Request Body パラメータ:
パラメータ | タイプ | 説明 |
|---|---|---|
| システム変数 → Document ID | DocuWare ドキュメント参照 |
| システム変数 → File Cabinet GUID | ドキュメントを格納するファイルキャビネット |
| 固定値 → ステータス値 | 請求書に設定するステータス値 |
JSON HTTP Request Body:
{
"documentId": "Index field DocumentID",
"fileCabinetId": "System variables File Cabinet GUID",
"statusValue": "Paid"
}JSON HTTP Response Body (200):
{
"taskId": "{id}"
}statusValue に書き込まれるステータス値:
値 | 説明 |
|---|---|
| 受信者が請求書の支払いを承認しました。 |
| 受信者が請求書を拒否しました(金額の誤り、注文参照の欠落、サービスの異議申し立てなど)。 |
| 受信者により請求書が支払い済みと宣言されました。 |
4. 検証レポートを作成する
エンドポイント: Post /v1/invoices/validation/report
DocuWare に保存された電子請求書に対して技術的およびビジネスルールのチェックを実行し、検証レポートを生成します。結果は専用のインデックスフィールドに書き込まれ、検証レポートが電子請求書に添付されます。
この機能は現在 ドイツのみ で利用可能です。
HTTP Headers: Accept: application/json + Content-Type: application/json (構成済み)
HTTP Request Body パラメータ:
パラメータ | タイプ | 説明 |
|---|---|---|
| システム変数 → Document ID | DocuWare ドキュメント参照 |
| システム変数 → File Cabinet GUID | ドキュメントを格納するファイルキャビネット |
| 固定値 → | E-Invoicing Service 構成の名前 |
| インデックスフィールド → 例: Validation Status | 検証結果が書き込まれるインデックスフィールド |
JSON HTTP Request Body:
{
"documentId": "Index field DocumentID",
"fileCabinetId": "System variables File Cabinet GUID",
"configuration": "ConfigurationName",
"validationStatusField": "Index field Validation_Status"
}JSON HTTP Response Body (200):
{
"taskId": "{id}"
}validationStatusField に書き込まれる検証結果値:
値 | 説明 |
|---|---|
| 電子請求書はすべての技術的およびビジネスルールのチェックに合格しました |
| 電子請求書は 1 つ以上のチェックに不合格でした |
| 技術的なエラーにより検証を完了できませんでした |
エラー処理
DocuWare E-Invoicing Service を通じて電子請求書を処理する際、ワークフローの異なる段階でエラーが発生する可能性があります。エラーの処理方法を扱う前に、エラーがどこで報告され、どのような種類のエラーが発生し得るかを理解しておくと役立ちます。
エラーは以下のいずれかの方法で報告されます。
ワークフロー履歴 – ワークフローの実行と失敗したアクティビティを記録します
Task Viewer – 送受信された電子請求書の処理履歴とエラーの詳細を表示します。DocuWare E-Invoicing Service を構成する方法 – 履歴 を参照してください
Web サービスのレスポンス – E-Invoicing Service API から直接エラーメッセージが返され、ドキュメントのインデックスフィールドにマッピングできます
エラーの種類と解決方法
以下の種類のエラーが発生する可能性があります。エラーを解決するために必要な手順は、特定のエラーとその根本原因によって異なります。
構成およびセットアップ
ConfigurationNameが無効または一致しない法人に有効なライセンスがない、または契約が解除されている
ワークフローユーザーに E-Invoicing Service 設定に対する 使用 権限がない
誤った環境が選択されている (Staging と Production)
解決方法: E-Invoicing Service 構成を確認・修正し、再試行してください。
証明書と認証
電子証明書の有効期限切れまたは無効 (ポーランド/KSeF)
証明書の PIN が不正 (ポーランド/KSeF)
解決方法: ポーランド財務省を通じて電子証明書を更新し、E-Invoicing Service 構成で更新してください。
Peppol ID が有効になっていないか、お使いのアカウントに登録されていない
解決方法: DocuWare サポート にお問い合わせください。
受信者
受信者の Peppol ID がネットワークで見つからない
解決方法: 電子請求書上の受信者情報を確認し、受信者に連絡してその Peppol ID を確認してください。
ドキュメント
ファイルキャビネット内にドキュメントが見つからない
重複送信 – 請求書がすでに送信されている
無効なステータス遷移
解決方法: 電子請求書のデータを確認し、ワークフロー構成が正しいか検証してください。
ネットワークと接続性
アクセスポイントに到達できない
Peppol ネットワークが一時的に利用できない
KSeF サービスが一時的に利用できない
税務当局のシステムがメンテナンス中
解決方法: 該当するネットワークの公開ステータスページでステータスを確認してください。
ワークフローによるエラー処理の仕組み
電子請求書を送信する エンドポイントを使用して電子請求書を送信すると、E-Invoicing Service は即時にタスク ID を返します。ネットワークへの実際の配信はバックグラウンドで行われ、通常 1〜3 分以内に完了します。ワークフローは ステータスの更新を取得する エンドポイントを使用して結果をポーリングする必要があります。
送信ワークフローでのエラー処理には以下のパターンを推奨します。
1. タスク ID を送信および保存する
Post /v1/invoices/ を呼び出した後、返されたタスク ID をグローバルワークフロー変数に保存します。このタスク ID は後続のすべてのステータスチェックに必要です。
2. ステータスを待機しポーリングする
Get /v1/tasks/{id}/status を呼び出す前に、1〜3 分の 遅延時間 アクティビティを追加します。タスクの結果を確認します。
完了 → 請求書ステータスのインデックスフィールドの確認に進みます:
ステータス =
sent→ 電子請求書は正常に配信されました。ワークフローを継続しますステータス =
error→ 配信に失敗しました。エラー処理へ進みます
再試行 → E-Invoicing Service が自動的に配信を再試行しています。約 40 分の 遅延時間 を追加し、
Get /v1/tasks/{id}/statusで再度ポーリングしてください。サービスは最大 24 時間再試行を続けます。
3. エラーを処理する
最終的なエラーが確認された場合:
Web Service アクティビティの Data assignment 設定を使用して、API レスポンスからのエラーメッセージをファイルキャビネット内の専用インデックスフィールド(例:
Errors)に書き込みます。担当ユーザーがエラーを確認し、定義されたタスク構成に従って対応できるよう、ワークフロータスク を作成します。
情報
E-Invoicing Service から返されるエラーメッセージは、Web Service アクティビティの Data assignment タブで JSON パス
$errorMessageを使用してドキュメントのインデックスフィールドにマッピングできます。これにより、Task Viewer にアクセスしなくてもドキュメント上で直接エラーを確認できます。
エラー処理に関する推奨事項
E-Invoicing Service からのエラーメッセージを取得するため、ファイルキャビネットに専用のエラーインデックスフィールド(例: キーワードとしての Errors)を含めてください。
エラーケース用の ワークフロータスク は、ユーザーが進めるべき手順を明確に指示するように設計してください。
DocuWare Configurations > Integrations > E-Invoicing 内の Task Viewer を使用すると、送受信されたすべての電子請求書の完全な処理履歴と詳細なエラーメッセージを確認できます。場合によっては、Task Viewer 内で電子請求書タスクの再試行を開始できます。
ネットワークまたは接続性のエラーの場合、E-Invoicing Service は最大 24 時間にわたり自動的に再試行を行います。重複送信を防ぐため、この期間中は手動での再送信を避けてください。
請求書ステータスリファレンス
以下のステータス値は電子請求書に使用されます。一部のステータス値は、Peppol ネットワークやポーランドの KSeF などのネットワークとのバックグラウンドプロセスによって自動的に設定されます。
発行済み請求書
ステータス | 説明 |
|---|---|
| 発行済み請求書の初期ステータス |
| 請求書が正常に送信されました |
| 請求書が承認済みとしてマークされました |
| 登録通知を受信したか、手動で登録済みとマークされました |
| 拒否通知を受信したか、手動で拒否済みとマークされました |
| 請求書が支払い済み、または手動で支払い済みとマークされました |
受信請求書
ステータス | 説明 |
|---|---|
| 受信請求書の初期ステータス、または手動で new とマークされました |
| 請求書が承認済みとしてマークされました |
| 請求書が拒否済みとしてマークされました |
| 請求書が注釈付きとしてマークされました |
| 請求書が支払い済み、または手動で支払い済みとマークされました |
発行済み簡易請求書
ステータス | 説明 |
|---|---|
| 発行済み簡易請求書の初期ステータス |
| 請求書が正常に送信されました |
| 請求書が承認済みとしてマークされました |
| 拒否通知を受信したか、手動で拒否済みとマークされました |
| 登録通知を受信したか、手動で登録済みとマークされました |
| 請求書が支払い済み、または手動で支払い済みとマークされました |