コンテンツにスキップ

Xeroに接続する

PlaidCloudをXeroのAccounting APIに接続すると、クエリを手書きすることなく、勘定科目表、取引先、請求書、クレジットノート、支払、手動仕訳などを取得し、ドキュメントを書き戻すことができます。このガイドでは、接続、インポートステップ、転記ステップについて説明します。

Xeroで次のものが必要です。

  • 読み取りと転記の対象にする組織にアクセスできるXeroのログイン。
  • その組織に対して接続アプリを承認する権限。セットアップ中に、Xeroが許可の承認を求めます。

必要なものは以上です。PlaidCloudがOAuthアプリを登録するため、開発者アカウント、クライアントID、クライアントシークレットを取得する必要はありません。

  1. Tools > Connections を開き、New Connection をクリックします。

  2. メニューから REST - Xero を選択します。

  3. 接続に名前を付けます(例: Xero Prod)。

  4. Xeroに接続 をクリックし、Xeroにサインインして、PlaidCloudが到達できるようにしたい組織へのアクセスを承認します。

  5. 接続ステータス に、この許可が対象とする組織の数が報告されます。この接続の対象にする組織を 組織 から選択します。

  6. Create をクリックします。

  1. ワークフローに Xero: エンティティのインポート ステップを追加します。

  2. Xero接続 に作成した接続を、エンティティタイプ に Chart of Accounts を、ターゲットテーブル に作業用テーブルを設定します。

  3. ステップを実行します(ワークフロー内で1つのステップを実行するを参照)。

ターゲットテーブルにデータが入っていれば、許可と組織の選択がどちらも正しいことを確認できます。エラーが発生した場合は、問題が示されます。たとえば、期限切れの許可や、ログインがアクセスできなくなった組織などです。

  1. Xero: エンティティのインポート ステップを追加し、Xero接続 と ターゲットテーブル を設定します。

  2. エンティティタイプ に、取得したいレコードを設定します。勘定科目表、取引先、請求書、クレジットノート、支払、手動仕訳、銀行取引、アイテム、トラッキングカテゴリ、税率、通貨から選べます。

  3. 任意のフィルターで取得範囲を絞り込みます。ステータス(AUTHORISED や PAID など、Xeroの単一のステータス)、開始日 と 終了日(エンティティの日付に対する YYYY-MM-DD の境界)、更新日時以降(更新日時による切り捨ての基準)です。

  4. ステップを実行し、ターゲットテーブルを確認します。

Xero: ドキュメントの転記 ステップは、すべてのERP転記ステップが使用するのと同じ共有書き込みパイプラインを通じて、5種類のドキュメントを転記します。ManualJournal、Invoice、Bill、Payment、CreditNote です。

  1. ヘッダーテーブル を作成します。ドキュメント1件につき1行で、ref(ドキュメントの識別子)、doc_type(ManualJournal、Invoice、Bill、Payment、CreditNote)、posting_date の列と、ドキュメントタイプが必要とする場合は currency_id、party_id(Xeroの取引先)、memo、due_date を含めます。Paymentには total_amt、deposit_account_id、bank_account_id、linked_invoice_id も必要で、CreditNoteには credit_note_type(販売の場合はデフォルトの ACCRECCREDIT、購買の場合は ACCPAYCREDIT)が必要です。1つのバッチにドキュメントタイプを混在させることができ、PlaidCloudは転記の前に doc_type でバッチを分割します。

  2. 明細テーブル を作成します。ref ごとに1行以上で、各行にその ref を持たせ、ドキュメントタイプに合わせた形にします。

    ドキュメントタイプ 明細列
    ManualJournal account_id、debit、credit、およびトラッキング用の任意の class_id / department_id
    Invoice item_id、qty、unit_price、amount
    Bill account_id、amount
    CreditNote item_id、qty、unit_price、amount
    Payment linked_txn_id(明細が適用される請求書)、amount

    tax_type と memo は、どの明細でも任意です。

  3. Xero: ドキュメントの転記 ステップを追加し、Xero接続、環境(接続のPlaidCloud環境のうち、転記に使用するもの)、ヘッダーテーブル、明細テーブル、結果テーブル を設定します。

  4. ヘッダーフィールド タブと 明細フィールド タブで、独自の列名をこれらのフィールドにマッピングします。

  5. Test Only Mode をオンのままにしてステップを実行します。PlaidCloudは、台帳の要求(ledger claim)を行わず、何も転記せずに、すべてのドキュメントを作成してチェックします。

  6. 結果テーブルを確認します(ドキュメント1件につき1行: ref、doc_type、natural_key、xero_id、status、message)。error の行があれば修正して、再度検証します。

  7. Test Only Mode をオフにして再度実行し、実際に転記します。最初に失敗したドキュメントでバッチを即座に停止したい場合を除き、Continue posting remaining documents if one document fails はオンのままにしてください。

各ドキュメントは、送信される前にPlaidCloudの冪等性台帳で要求(claim)されるため、再実行によって、すでに posted に達したドキュメントが転記されることはありません。台帳のキーにはドキュメントタイプが接頭辞として付くため、同じ ref を持つ請求書と請求は、Xeroが両方を同じエンドポイントで転記する場合でも衝突しません。

タイムアウトやレスポンスの欠落など、結果が不明確な場合、PlaidCloudはスタンプしたドキュメント番号でXeroに問い合わせ直し、ドキュメントが最終的な転記済みステータスにある場合にのみ、一致を証拠として扱います。Xeroの請求書番号とクレジットノート番号は一意であることが保証されていないため、下書き、無効化、または番号が重複して一致したものは、この書き込みの結果として記録されるのではなく、隔離されます。

機能の制限事項: 本番で転記する前にお読みください

Section titled “機能の制限事項: 本番で転記する前にお読みください”