こんにちは。CData Software Japan の色川です。
EC サイトの会員データを、SFA やCRM 等の業務アプリに連携したいケースは多いですよね。この記事では、BtoB EC・Web受発注システムであるB カートの会員データを、kintone に連携する方法をご紹介します。
B カート
B カートは、BtoB の受発注業務をEC 化するクラウドサービスです。BtoB 取引を前提として開発されていて、BtoC 向けのショッピングカートシステムでは対応が難しい複雑な取引条件やシステム要件にも対応しています。SaaS で提供されており、システムのスクラッチ開発・カスタマイズではネックとなる開発コストや納期といったリスクも最小に抑えることができるサービスです。
BtoB EC・Web受発注システム「Bカート」 (bcart.jp)
CData Arc
CData Arc は、CData 製品の中で「自動化/Automate」を担うデータ連携ツールです。「B2B 連携をもっとシンプルに」をコンセプトに、ファイル連携 & DB 連携 & API 連携といったB2B 連携に必要なすべてをノーコード・ローコードでつなぐことができるプラットフォームです。
この記事のシナリオ
この記事では「B カートの会員データをkintone の顧客リストに連携する」シナリオを作成します。
このシナリオで作成するフローで「B カートの会員データを定期的に取得し、kintone の顧客アプリのレコードとして連携(登録または更新)」することができます。
B カート会員管理
kintone 顧客リスト
事前準備
事前準備として、必要な製品のインストールや、連携元・連携先の構成を確認していきましょう。
CData 製品のダウンロードとインストール
この記事のシナリオでは、こちらの製品を利用します。30 日間のトライアルライセンスが提供されていますので、ぜひお手元で試してみてください。
CData Arc のインストールはこちらを参考にしてください。
B カートAPI の設定
B カートAPI への接続には、アクセストークンが必要です。こちらの記事で取得方法をご紹介していますので、あらかじめ取得してください。
https://www.cdata.com/jp/blog/bcarthowtouse
CData Arc スタートアップガイドとナレッジベース
CData Arc を使いはじめるときは、こちらも参考にしてください。
CData Arc に関するナレッジは、こちらにまとめています。あわせて参考にしてください。
それでは実際にそれぞれの連携フローを作成していきます。
連携フローの作成
このシナリオで作成する連携フローは以下のような流れになっています。
|
コネクタ |
内容 |
1 |
CData |
B カートの会員データ(Customers)をSelect |
2 |
XMLMap |
1.で取得した情報を3.にマッピング |
3 |
Kintone |
kintone の顧客リストにUpsert |
1. CData コネクタ(B カート)
最初にフローの起点となるCData コネクタを配置し「B カートの会員データを取得」します。コアカテゴリから「CData コネクタ」を選択し、フローキャンバスへ配置します。
コネクタの設定で、B カートへの接続を設定します。データソースには「BCart」を選択します。
Personal Access Token を設定し、接続テストで接続を確認します。
会員データ抽出の設定を行います。アクションに「Select」。対象テーブルに「Customers」テーブルを選択します。
抽出するカラムの選択や、条件設定もここで行えます。このシナリオでは条件設定の例として、「Id が10001 以上 かつId が10010 以下(計10件)」のデータを条件に指定しています。
「XML 出力をプレビュー」で取得されるデータをプレビュー確認することができます。
設定内容で正しく取得できるか確認するために、アウトプットタブから「受信」を実行します。対象レコードが取得できていれば成功です。
2. Kintone コネクタ
次にフローの終点となるKintone コネクタを配置し「kintone の顧客リストへのUpsert を設定」します。コアカテゴリからの「Kintone コネクタ」を選択し、フローキャンバスへ配置します。
コネクタの設定で、kintone への接続を設定してください。
アクションに「Upsert」。対象テーブルに「顧客リスト」を選択します。
このシナリオではUpsert(Update or Insert)を判断するためのキーとして「メールアドレス」を指定しました。
3. XML Map コネクタ
このフローの最後に、CData コネクタ(B カート)から取得する情報を、Kintone コネクタにマッピングします。コアカテゴリから「XML Map」コネクタを配置します。
フローキャンバスの中で、CData コネクタ(B カート)からXML Map コネクタに。XML Map コネクタからKintone コネクタへフローを繋ぎます。これで双方のデータ構成(スキーマ)がXML Map コネクタで認識できるようになります。
XML Map の設定でそれぞれの項目をマッピングしていきます。
マッピング設定
同じ「顧客」の情報でも、アプリケーションやサービスによりデータ構造が異なる事が多いですよね。例えば、住所情報が幾つかに分けて保持されていたり、電話番号にハイフンを含む含まない、などは良くある例かと思います。
このシナリオでは、B カートの会員情報をkintone の顧客リストに連携する際、それぞれの項目を以下のようにマッピングしています。なお、XML Map では同じ名前を持つ項目は自動的にマッピングが支援されます。
kintone(顧客リスト)の項目 |
B カート(Customers)からのマッピング |
会社名 |
CompName |
部署名 |
Department |
担当者名 |
TantoLastName + TantoFirstName *1 |
郵便番号(数字のみ) |
Zip *2 |
TEL(数字のみ) |
Tel *2 |
住所 |
Pref + Address1 + Address2 + Address3 *1 |
メールアドレス |
Email |
*1 住所や担当者名のように、データ項目同士を文字列連結したい場合、CData Arc では文字列フォーマッタの concat() を利用することができます。
[xpath(Pref) | concat([xpath(Address1)], [xpath(Address2)], [xpath(Address3)] )]
*2 郵便番号やTEL のように、データ項目から特定の文字を置き換えたい場合(この場合は"-"を消したい ≒ ""に置き換えたい)、CData Arc では文字列フォーマッタの replace() を利用することができます。
[xpath(Zip) | replace('-', '')]
XML Map で提供される式エディタを使ったマッピング設定は、データ項目やフォーマッタの選択支援機能もありますので、使い始めるのも簡単です。 このシナリオでは比較的シンプルなマッピングをしてみましたが、CData Arc でのデータマッピングや変換について興味のある方はこちらを併せてごらんください。
CData Arc のデータマッピングと変換の概要
これで「B カートの会員データを、kintone の顧客リストへ連携する」フローができあがりました。
連携フローの実行と確認
作成したフローを実行して確認してみましょう。
起点となるCData コネクタ(B カート)からフローを実行してみます。アウトプットタブから「受信」を実行します。
フローの終点となるKintone コネクタのインプットタブの結果を確認します。kintone への更新実行の成功が確認できます。
kintone の顧客リストに連携されていることが確認できます。
シナリオの自動実行
CData Arc ではフローを定期実行するスケジューラ機能を持っています。今回のシナリオであれば、フローの起点となるコネクタの「オートメーション」タブで設定することができます。1時間に1度、毎時0分に定期実行する場合は、このように設定します。
おわりに
この記事では会員データを例にフローを作成しましたが、CData Arc とCData Driver を組み合わせれば、会員データに限らず、B カートとのデータ連携をノーコード&ローコストで実現することができます。
CData Arc はシンプルで拡張性の高いコアフレームワークに、豊富なMFT・EDI・エンタープライズコネクタを備えたパワフルな製品です。CData Drivers との組み合わせで270を超えるアプリケーションへの連携を実現できます。必要な連携を低価格からはじめられる事も大きな特長です。
皆さんのつなぎたいシナリオでぜひ CData Arc を試してみてください。
製品を試していただく中で何かご不明な点があれば、テクニカルサポートへお気軽にお問い合わせください。
この記事では CData Arc™ 2023 - 23.3.8698.0 を利用しています。
関連コンテンツ