Monaca アプリで使えるXero のデータ連携用のバックエンドAPI をノーコードで開発

宮本航太
宮本航太
プロダクトスペシャリスト
ハイブリッドアプリ開発プラットフォームMonaca から Xero のデータに接続するためのバックエンドAPI Server をCData API Server で構築



CData API Server を使って、Monaca ハイブリッドアプリ開発プラットフォーム(https://ja.monaca.io/) から Xero に接続してデータを取得する方法を説明します。

Xero データ連携について

CData を使用すれば、Xero のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:

  • Xero Accounts と、米国およびオーストラリアの Payroll API の両方に接続できます。
  • Customers、Transactions、Invoices、Sales Receipts などの Xero オブジェクトの読み取り、書き込み、更新、削除ができます。
  • SQL ストアドプロシージャを使用して、カートへのアイテム追加、注文の送信、添付ファイルのダウンロードなどのアクションを実行できます。
  • 会計、給与、ファイル、固定資産、プロジェクトデータを扱うことができます。

お客様は、Tableau、Qlik Sense、Excel などのお気に入りのツールと Xero データを定期的に統合し、Xero データをデータベースやデータウェアハウスに統合しています。


はじめに


API Server の設定

以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなXero OData サービスを作成していきましょう。

Xero への接続

Monaca からXero のデータを操作するには、まずXero への接続を作成・設定します。

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Xero」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、Xero への接続設定を行っていきましょう! 接続設定
  5. 接続には、認証用の値に加えてSchema 接続プロパティを設定してください。Xero はプライベートアプリケーション、 パブリックアプリケーション、パートナーアプリケーションに認証を提供します。設定したアプリケーションに応じて、XeroAppAuthentication プロパティを PUBLIC、PRIVATE、またはPARTNER に設定する必要があります。プライベートアプリケーションから接続するには、追加でOAuthAccessToken、OAuthClientId、 OAuthClientSecret、CertificateStoreType、CertificateStore、およびCertificateStorePassword を設定してください。

    パブリックまたはパートナーアプリケーションから接続する場合は、埋め込みOAuthClientId、OAuthClientSecret、 およびCallbackURL を指定するか、アプリを登録してOAuth の値を入手できます。

    Xero への認証については、ヘルプドキュメントの「はじめに」を参照してください。

  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

接続には、認証用の値に加えてSchema 接続プロパティを設定してください。Xero はプライベートアプリケーション、 パブリックアプリケーション、パートナーアプリケーションに認証を提供します。設定したアプリケーションに応じて、XeroAppAuthentication プロパティを PUBLIC、PRIVATE、またはPARTNER に設定する必要があります。プライベートアプリケーションから接続するには、追加でOAuthAccessToken、OAuthClientId、 OAuthClientSecret、CertificateStoreType、CertificateStore、およびCertificateStorePassword を設定してください。

パブリックまたはパートナーアプリケーションから接続する場合は、埋め込みOAuthClientId、OAuthClientSecret、 およびCallbackURL を指定するか、アプリを登録してOAuth の値を入手できます。

Xero への認証については、ヘルプドキュメントの「はじめに」を参照してください。

API Server のユーザー設定

次に、API Server 経由でXero にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。

  1. 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
  2. 次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
  3. その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。

Xero 用のAPI エンドポイントの作成

ユーザーを作成したら、Xero のデータ用のAPI エンドポイントを作成していきます。

  1. まず、「API」ページに移動し、 「 テーブルを追加」をクリックします。
  2. アクセスしたい接続を選択し、次へをクリックします。
  3. 接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。

OData のエンドポイントを取得

以上でXero への接続を設定してユーザーを作成し、API Server でXero データのAPI を追加しました。これで、OData 形式のXero データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

オンプレミスDB やファイルからのAPI Server 使用(オプション)

オンプレミスRDB やExcel/CSV などのファイルのデータを使用する場合には、API Server のCloug Gateway / SSH ポートフォワーディングが便利です。是非、Cloud Gatway の設定方法 記事を参考にしてください。

Monaca で作成したモバイルアプリでの Xero のデータ取得

Monacaではクラウド上にあるIDEが用意されていますので、まずはアカウント作成します。そこからCData API Server のデータをMonaca アプリ使う設定を作成していきます。

  1. ブラウザより Monaca のダッシュボードを開き、「新しいプロジェクトを作る」をクリックします。
  2. Monaca
  3. まずはテンプレートの種類は、フレームワークテンプレートを選択します。
  4. Monaca
  5. 今回は JavaScript を選択します。
  6. Monaca
  7. テンプレートは「Onsen UI V2 JS Navigation」を選択します。テンプレの画面構成は、「Push page」ボタンをクリックすると、画面遷移するものとなっています。
  8. Monaca
  9. 任意のプロジェクト名を設定し、「作成」ボタンをクリックします。
  10. Monaca
  11. 作成したプロジェクトを選択した状態で、「クラウドIDEで開く」をクリックします。
  12. Monaca
  13. 検索ボタンがクリックされたら、先ほど作成した API を Ajax で呼び出すようにしています。
    Monaca
    API Server で作成したエンドポイントをURL に設定し、ヘッダーにAPI Server のアクセストークンを設定します。
    Monaca
  14. レスポンスが返ってきた後、処理が成功していればリストにname だけを1データずつ加えています。

デバッグ実行してみる

Monaca でデバッグを行う際は、Monacaデバッガーアプリを実機にインストールすることで、MonacaのクラウドIDE と実機で動かしているMonacaデバッガーアプリが連動するようです。そのため、いちいちコードを修正してからのビルドが不要になるため、素早く検証を行うことができます。

また、Monaca Localkit を使うことで、ローカルの開発環境でも利用することができます。今回はこのLocalkit を使って vscode 上でコードを修正し、アプリ内容を確認していきました。

Monaca Localkit を起動し、プレビューを押すとすぐにアプリ画面が表示されます。

Monaca

初期画面→検索→画面遷移まで確認することができました。

Monaca

このように Xero 内のデータをMonaca アプリで利用することができるようになります。

はじめる準備はできましたか?

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server お問い合わせ