業務システムが増えるほど、「このデータを別のシステムに手入力する」「ExcelでデータをコピーしてAシステムからBシステムへ転記する」といった無駄な作業が発生します。私がこれまで支援してきた中小企業でも、販売管理システムと会計ソフトの間で毎日2時間かけて手入力転記を続けていたケースが多数ありました。
一方で、API連携を導入した企業では、システム間のデータが自動で同期され、転記作業がゼロになり、リアルタイムで最新データが共有されています。本記事では、非エンジニアでも理解できるAPI連携の基本概念から、ノーコードツールでの実装方法、失敗しない連携設計のポイントまで解説します。
RPAとの使い分けについてはRPA vs API連携、全体的なツール選定はSaaS選定基準ガイドも参照してください。
API連携とは?非エンジニア向け解説
APIの基本概念
API(Application Programming Interface)は、ソフトウェア同士が会話するための「窓口」です。人間が銀行の窓口でお金を引き出すように、システムがAPIという窓口を通じて他のシステムにデータを要求したり、送信したりします。
レストランの例で理解する
レストランで考えると分かりやすくなります。
- あなた(システムA): 料理が欲しい
- ウェイター(API): 注文を受けて、キッチンに伝える
- キッチン(システムB): 料理を作る
- ウェイター(API): 料理を運んでくる
あなたは直接キッチンに入らず、ウェイターを通じて注文します。同様に、システムAは直接システムBのデータベースを操作せず、APIを通じてデータを要求・取得します。
API連携のメリット
1. 手作業が不要になる
- 「Aシステムからデータをダウンロード → Excelに貼り付け → Bシステムにアップロード」といった作業がゼロに
- 人為的ミス(入力ミス、転記ミス、漏れ)がなくなる
2. リアルタイムでデータが同期される
- システムAで注文が入ると、即座にシステムBの在庫が減る
- 常に最新のデータで業務ができる
3. 一度作れば長期間安定稼働
- 画面が変わってもAPIの仕様は変わらない(RPAのように画面変更で停止しない)
- 24時間365日、自動で動き続ける
4. 大量データを高速処理
- RPAが1件10秒かかる処理でも、APIなら1秒以下
- 1,000件のデータをRPAで3時間 → APIで数分
API連携のデメリット
1. 初期設計と開発に時間がかかる
- 要件定義、設計、開発、テストで1〜3か月
- 技術者(エンジニア、SE)が必要
2. 初期コストが高い
- 開発費用として50〜300万円(RPAは10〜50万円)
- システムベンダーに依頼する場合、最低でも50万円〜
3. すべてのシステムがAPIを提供しているわけではない
- 古い基幹システム、中小企業向けパッケージソフトはAPI未提供が多い
- API提供有無は事前確認が必須
API連携を導入すべき5つのサイン
以下のいずれかに該当する場合、API連携が効果的です。
1. 毎日・毎時、同じデータ転記作業をしている
- 販売管理システムから会計ソフトへ売上データを毎日転記
- ECサイトの注文データを在庫管理システムに毎日手入力
- クレジットカード明細を経費精算システムに毎週転記
目安: 月間100件以上のデータ転記作業がある場合はAPI連携を検討
2. データの不整合が頻発する
- システムAでは在庫100個、システムBでは在庫120個と数が合わない
- 顧客情報がシステムごとに異なる(住所、電話番号、メールアドレスなど)
- どのデータが最新か分からない
原因: 手入力による転記ミス、更新漏れ
3. リアルタイムでの情報共有が必要
- 注文が入った瞬間に在庫を引き当てたい
- 顧客対応中に最新の注文履歴を確認したい
- 売上データをリアルタイムで経営ダッシュボードに表示したい
原因: 手作業では即時性が確保できない
4. 複数システムをまたいだ業務フローがある
- 「受注(CRM) → 出荷(在庫管理) → 請求(会計)」の流れで3システムをまたぐ
- 各システムに手入力しており、どこかで漏れると業務が止まる
原因: システム間の連携がなく、人手でつないでいる
5. 月次決算・レポート作成に時間がかかる
- 各システムからデータをエクスポート → Excelで集計 → レポート作成に3日かかる
- 集計ミスが頻発し、何度もやり直し
原因: データが分散しており、手作業で集計
これらの問題を放置すると、転記工数の増大、データ不整合による業務混乱、意思決定の遅れを招きます。
API連携の3つのタイプ
API連携には大きく分けて3つのタイプがあります。
タイプ1: 標準API連携(システムが公式に提供)
仕組み
- システムが公式にAPI仕様を公開
- 開発者向けドキュメントが整備されている
- 認証方式(APIキー、OAuth等)が明確
具体例
- Salesforce API(顧客管理)
- freee API(会計)
- kintone API(業務アプリ)
- Shopify API(ECサイト)
メリット
- 公式サポートがある
- 仕様書が充実している
- セキュリティが担保されている
デメリット
- API利用料が有料のケースがある(月額数万円、または従量課金)
- 上位プランのみ対応の場合がある
タイプ2: ノーコードツール経由の連携
仕組み
- Zapier、Make(旧Integromat)、Power Automateなどのツールを利用
- プログラミング不要で、GUIでAPI連携を設定
- 「トリガー(きっかけ)」と「アクション(実行内容)」を設定
具体例
- 「Google Formsに回答があったら → Slackに通知」
- 「Gmailに添付ファイルが届いたら → Google Driveに保存」
- 「Shopifyで注文が入ったら → Googleスプレッドシートに追記」
メリット
- プログラミング不要(非エンジニアでも設定可能)
- 設定が簡単(数十分〜数時間で完成)
- 3,000以上のサービスに対応(Zapier)
デメリット
- 複雑な処理は難しい
- 月額費用がかかる(Zapier: 月$19.99〜、Make: 月$9〜)
- API呼び出し回数に制限がある
タイプ3: カスタムAPI連携(独自開発)
仕組み
- エンジニアがプログラムコードを書いて連携
- REST API、SOAP API、GraphQLなどの技術を使用
- 自社の業務フローに完全に合わせた設計が可能
具体例
- 自社開発の販売管理システム ⇔ freee(会計)
- 古い基幹システム ⇔ kintone(業務アプリ)
- 複数システム(CRM、在庫、会計)を統合した自動化フロー
メリット
- 自社の業務フローに完全に合わせられる
- 複雑な処理、条件分岐が可能
- 長期的にはコストが安い(月額費用なし)
デメリット
- 開発費用が高い(50〜300万円)
- エンジニアが必要
- 開発期間が長い(1〜3か月)
ノーコードツールでのAPI連携実践ガイド
非エンジニアでも実装できる、ノーコードツールを使ったAPI連携の手順を解説します。
推奨ノーコードツール
| ツール | 月額料金 | 特徴 | 連携サービス数 |
|---|---|---|---|
| Zapier | $19.99〜 | 最も人気、日本語非対応 | 7,000以上 |
| Make(旧Integromat) | $9〜 | 複雑な処理に強い | 1,500以上 |
| Power Automate | $15〜 | Microsoft製品との連携◎ | 500以上 |
| IFTTT | $2.5〜 | シンプル、個人向け | 800以上 |
推奨: 初心者はZapier、複雑な処理ならMake、Microsoft 365ユーザーならPower Automate
Zapierでの連携例:Googleフォーム → Slack通知
シナリオ: お問い合わせフォーム(Googleフォーム)に回答があったら、Slackに自動通知
Step 1: Zapierアカウント作成
- Zapier公式サイト(zapier.com)にアクセス
- 「Sign Up Free」でアカウント作成(メールアドレス登録)
- 無料プラン(月100タスクまで)で開始
Step 2: Zap(自動化フロー)作成
- 「Create Zap」をクリック
- トリガー(きっかけ)を設定
トリガー設定
- アプリ: 「Google Forms」を選択
- イベント: 「New Response in Spreadsheet」(新しい回答があったら)
- Googleアカウントでログイン
- 対象のGoogleフォームを選択
Step 3: アクション設定
アクション設定
- アプリ: 「Slack」を選択
- イベント: 「Send Channel Message」(チャンネルにメッセージ送信)
- Slackアカウントでログイン
- 送信先チャンネルを選択(例: #お問い合わせ)
- メッセージ内容を設定
メッセージ例:
新しいお問い合わせがありました!
お名前: {{Name}}
メールアドレス: {{Email}}
お問い合わせ内容: {{Message}}
対応をお願いします。
Step 4: テスト実行
- 「Test」ボタンをクリック
- Googleフォームに実際に回答を入力
- Slackに通知が届くか確認
Step 5: 本番稼働
- 「Turn on Zap」をクリック
- これで自動化がスタート
所要時間: 約15分
効果: お問い合わせ対応が即座に開始でき、顧客満足度向上
実践例2: Shopify → Googleスプレッドシート
シナリオ: ECサイト(Shopify)で注文が入ったら、Googleスプレッドシートに自動追記
Zap設定
トリガー
- アプリ: Shopify
- イベント: New Order(新しい注文)
アクション
- アプリ: Google Sheets
- イベント: Create Spreadsheet Row(行を追加)
- スプレッドシートを選択
- 各列にShopifyのデータをマッピング
マッピング例
- A列: 注文日時 → {{Order Date}}
- B列: 注文番号 → {{Order Number}}
- C列: 顧客名 → {{Customer Name}}
- D列: 商品名 → {{Product Name}}
- E列: 金額 → {{Total Price}}
効果: 注文データが自動でスプレッドシートに蓄積され、集計が容易に
実践例3: Gmail添付ファイル → Google Drive自動保存
シナリオ: 特定の差出人からメールが届いたら、添付ファイルをGoogle Driveに自動保存
Zap設定
トリガー
- アプリ: Gmail
- イベント: New Email Matching Search(検索条件に一致する新着メール)
- 検索条件:
from:client@example.com has:attachment
アクション
- アプリ: Google Drive
- イベント: Upload File(ファイルをアップロード)
- フォルダを選択
- ファイル名:
{{Attachment Name}} - ファイル内容:
{{Attachment}}
効果: 請求書、見積書、契約書などが自動で整理される
カスタムAPI連携の実装手順
エンジニアに依頼してカスタムAPI連携を実装する際の手順を解説します。
Step 1: 連携要件の整理(1週間)
まず、何を連携したいかを明確にします。
整理すべき項目
- 連携元システム: どのシステムからデータを取得するか
- 連携先システム: どのシステムにデータを送るか
- 連携するデータ: 何のデータを連携するか(顧客情報、売上データ、在庫データなど)
- 連携タイミング: いつ連携するか(リアルタイム、1時間ごと、1日1回など)
- 連携方向: 一方向(A → B)か、双方向(A ⇔ B)か
- エラー時の対応: 連携失敗時にどうするか(リトライ、管理者通知など)
要件定義書サンプル
# API連携要件定義書
## 連携概要
販売管理システム(kintone)から会計ソフト(freee)へ売上データを自動連携
## 連携元
- システム: kintone(販売管理アプリ)
- データ: 売上データ(日付、顧客名、商品名、金額、消費税)
## 連携先
- システム: freee(会計ソフト)
- データ: 仕訳データ(借方・貸方、勘定科目、金額)
## 連携タイミング
- 毎日深夜2時に前日分を一括連携
- 手動実行も可能
## 連携ルール
- kintoneの「売上確定」ステータスのデータのみ連携
- 既に連携済みのデータは除外(重複チェック)
- 消費税は自動計算し、仮受消費税に計上
## エラー時の対応
- 連携失敗時はSlackに通知
- 3回リトライして失敗したら管理者に通知
- エラーログをCSVで保存
Step 2: API提供有無と仕様の確認(3日)
連携元・連携先のシステムがAPIを提供しているか確認します。
確認方法
- 公式サイトで確認: 「システム名 API」で検索
- サポートに問い合わせ: 「API連携は可能ですか?」と質問
- API仕様書を取り寄せ: 開発者向けドキュメントを入手
確認項目
- API提供の有無
- 認証方式(APIキー、OAuth、Basic認証など)
- 利用料金(無料、有料プランのみ、従量課金など)
- API呼び出し制限(1時間あたり何回まで、など)
- 提供されるエンドポイント(データ取得、データ登録、データ更新など)
API提供がない場合の代替案
- CSVエクスポート/インポート機能で代用
- RPAで画面操作を自動化
- システムベンダーにAPI開発を依頼(有償)
Step 3: 開発パートナーの選定(1週間)
API連携を開発するエンジニアを探します。
選択肢
- 社内エンジニア: 自社に開発チームがあれば依頼
- システムベンダー: 既存システムの開発元に依頼
- SIer(システムインテグレーター): API連携専門の会社に依頼
- フリーランスエンジニア: クラウドソーシング(ランサーズ、クラウドワークス)で探す
見積もりの取り方
- 要件定義書を提示し、3社から見積もりを取る
- 開発費用、納期、保守費用を比較
- 過去の実績(同様のAPI連携経験)を確認
費用相場
- シンプルな連携(1対1、データ項目10個以内): 30〜80万円
- 中規模連携(複数システム、データ変換あり): 80〜200万円
- 複雑な連携(3システム以上、複雑なビジネスロジック): 200〜500万円
Step 4: 設計・開発(1〜2か月)
エンジニアが設計・開発を行います。
開発フェーズ
- 詳細設計: API呼び出し方法、データ変換ロジック、エラーハンドリングを設計
- 開発: プログラムコードを作成
- 単体テスト: 個別の機能が正しく動作するかテスト
- 結合テスト: 連携元・連携先を接続してテスト
依頼側が準備すること
- テスト用のアカウント発行(連携元・連携先システム)
- テストデータの準備(実際のデータに近いもの)
- テスト結果の確認(正しく仕訳されているか、など)
Step 5: テスト運用(2週間)
本番環境で試験運用し、問題がないか確認します。
テスト項目
- 正常系: 正しいデータが正しく連携されるか
- 異常系: エラーデータ(不正な形式、必須項目なし)が適切にエラーになるか
- 負荷テスト: 大量データ(1,000件以上)を連携しても問題ないか
- リトライ: 連携失敗時に自動リトライされるか
- 通知: エラー時にSlack/メール通知が届くか
確認方法
- 連携元システムにテストデータを登録
- 連携先システムで正しく反映されているか確認
- エラーログを確認
Step 6: 本番稼働・運用保守(継続)
本番環境で稼働開始し、定期的にメンテナンスします。
運用で必要なこと
- 監視: 毎日ログを確認し、エラーがないかチェック
- 保守: API仕様変更時に対応(年1〜2回程度)
- 改修: 業務フロー変更時に対応
保守費用の目安
- 月5〜10万円(監視・軽微な改修込み)
- または年間契約で50〜100万円
API連携の失敗しない設計ポイント
ポイント1: エラーハンドリングを必ず設計する
API連携は必ず失敗することがあります。失敗時の対応を事前に設計します。
よくある失敗原因
- 連携先システムがメンテナンス中
- ネットワーク障害
- データ形式が不正
- API呼び出し制限に到達
推奨対応
- リトライ: 失敗したら一定時間後に再実行(3回まで)
- 通知: リトライしても失敗したら管理者にSlack/メール通知
- ログ: すべての連携処理をログに記録し、後から原因を追跡可能に
- 手動再実行: エラーデータを確認して、手動で再実行できる仕組み
ポイント2: 冪等性を担保する
同じデータを2回送信しても、結果が変わらないようにします。
悪い例
- 売上データを2回送信 → 売上が2倍に計上される(重複計上)
良い例
- 売上データに一意のID(注文番号など)を付与
- 連携先システムで「このIDはすでに処理済み」とチェック
- 重複データは無視
ポイント3: データ変換ルールを明文化する
連携元と連携先でデータ形式が異なる場合、変換ルールを明確にします。
例: 日付形式の変換
- 連携元(kintone):
2026-02-27 - 連携先(freee):
2026/02/27 - 変換ルール: ハイフンをスラッシュに置換
例: 勘定科目のマッピング
- kintone「売上」 → freee「売上高」
- kintone「仕入」 → freee「仕入高」
- kintone「経費」 → freee「消耗品費」
変換ルールを仕様書に明記し、エンジニアと合意します。
ポイント4: 段階的にリリースする
いきなり全データを連携すると、問題発生時の影響が大きくなります。
推奨リリース手順
- Phase 1: 1日分のデータのみ連携(1週間試験運用)
- Phase 2: 1週間分のデータを連携(2週間試験運用)
- Phase 3: 全データを連携(本番稼働)
並行運用: 1〜2か月は手作業と並行し、結果を照合
ポイント5: API仕様変更に備える
連携先システムがAPI仕様を変更することがあります。
対策
- API仕様書のバージョンを確認(v1、v2など)
- システムベンダーからのお知らせメールを確認
- 年1回、API仕様書を再確認し、変更があれば対応
バージョンアップ通知の例
【重要】freee API v2へのバージョンアップのお知らせ
2026年6月1日より、freee APIがv2にバージョンアップされます。
v1は2026年12月31日でサポート終了となります。
主な変更点:
- 認証方式がOAuth 2.0に変更
- レスポンス形式がJSON形式に統一
詳細は開発者ドキュメントをご確認ください。
API連携のセキュリティ対策
API連携では、外部システムと通信するためセキュリティ対策が必須です。
1. 認証情報の管理
APIキー、パスワードの保管
- プログラムコードに直接書かない(GitHubに公開されるリスク)
- 環境変数、または専用の秘密情報管理ツール(AWS Secrets Manager、Azure Key Vaultなど)に保管
悪い例
# APIキーをコードに直接記述(NG)
api_key = "sk_live_abc123def456"
良い例
# 環境変数から取得(OK)
import os
api_key = os.environ.get('FREEE_API_KEY')
2. 通信の暗号化
HTTPS通信を必須化
- HTTP(暗号化なし)ではなく、HTTPS(SSL/TLS暗号化)を使用
- APIキーやパスワードが盗聴されるリスクを防ぐ
3. アクセス権限の最小化
必要最小限の権限のみ付与
- 例: 売上データを取得するだけなら「読み取り専用」権限
- 例: データを登録するなら「書き込み」権限
- 「全権限」は極力避ける
4. IPアドレス制限
接続元IPアドレスを制限
- API連携を実行するサーバーのIPアドレスのみ許可
- 不正アクセスを防ぐ
5. ログの監視
異常なAPI呼び出しを検知
- 1時間あたりのAPI呼び出し回数を監視
- 通常100回/時間なのに、突然1,000回/時間になったら不正アクセスの可能性
- アラート通知を設定
ケーススタディ: 製造業のAPI連携導入事例
企業プロフィール
- 業種: 金属部品製造
- 従業員数: 52名
- 課題: 販売管理システム(独自開発)と会計ソフト(freee)の間で、毎日2時間かけて売上データを手入力転記
導入前の状況
業務フロー
- 販売管理システムから売上データをCSVエクスポート
- Excelで開き、勘定科目を手作業で追加
- freeeのインポート形式に変換
- freeeにインポート
- 仕訳を確認し、ミスがあれば修正
問題点
- 毎日2時間の転記作業(経理担当者の負担)
- 入力ミスが月5〜10件発生
- 月次決算が遅れる(転記が終わらないと集計できない)
API連携導入の経緯
きっかけ: 経理担当者が「毎日の転記作業がつらい」と訴え
選定理由
- 販売管理システム(独自開発)にはAPI機能がなかったが、ベンダーに依頼してAPI開発が可能
- freeeは標準でAPI提供
- RPAも検討したが、長期的にはAPI連携の方が安定
導入プロセス
Phase 1: 要件定義(2週間)
経理担当者・経営者・システムベンダーで要件を整理。
連携要件
- 販売管理システム → freee
- 売上データ(日付、顧客名、商品名、金額、消費税)
- 毎日深夜2時に前日分を一括連携
- エラー時はSlack通知
Phase 2: API開発(2か月)
開発内容
- 販売管理システムベンダーがAPI開発(初期費用120万円)
- SIerがfreee連携プログラム開発(初期費用80万円)
- 合計200万円
開発期間: 2か月
Phase 3: テスト運用(1か月)
- 1週間分のデータでテスト
- 仕訳内容を手作業と照合し、正確性を確認
- エラーハンドリング、リトライ機能を検証
Phase 4: 本番稼働
- 本番環境で稼働開始
- 1か月は手作業と並行運用し、結果を照合
- 問題なければ手作業を完全停止
導入効果
定量効果
| 項目 | 導入前 | 導入後 | 改善率 |
|---|---|---|---|
| 転記作業時間 | 2時間/日 | 0時間/日 | 100%削減 |
| 入力ミス | 月5〜10件 | 月0件 | 100%削減 |
| 月次決算完了 | 翌月15日 | 翌月5日 | 10日早期化 |
定性効果
- 経理担当者が転記作業から解放され、分析業務に集中
- リアルタイムで売上が把握でき、経営判断が迅速化
- 月次決算が早期化し、銀行融資の審査がスムーズに
投資額とROI
初期投資
- API開発費用: 200万円
- 初期設定・テスト: 社内工数40時間(約20万円相当)
- 合計: 約220万円
継続コスト
- 運用保守費用: 月5万円
- 年間コスト: 60万円
効果額(年間)
- 転記作業時間削減: 2時間/日 × 240日 × 3,000円/時間 = 約144万円
- 入力ミス削減による修正工数削減: 約30万円
- 月次決算早期化による融資審査迅速化: 約50万円(推定)
- 合計効果: 約224万円/年
ROI計算
- 初年度投資額: 220万円 + 60万円 = 280万円
- 初年度効果額: 224万円
- 初年度ROI: (224万円 - 280万円) / 280万円 × 100 = -20%(初年度は赤字)
2年目以降
- 投資額: 60万円/年(運用保守のみ)
- 効果額: 224万円/年
- 2年目ROI: (224万円 - 60万円) / 60万円 × 100 = 273%
投資回収期間: 約15か月
3年間の累計
- 投資額: 220万円 + 60万円 × 3年 = 400万円
- 効果額: 224万円 × 3年 = 672万円
- 累計ROI: (672万円 - 400万円) / 400万円 × 100 = 68%
成功のポイント
- 要件定義を丁寧に行った: 経理担当者が実際の業務フローを詳細に説明し、エンジニアが理解
- 段階的にリリース: テスト運用、並行運用を経て本番稼働
- エラーハンドリングを設計: Slack通知、リトライ機能で安心して運用
- 税理士に事前相談: 仕訳ルールを税理士に確認し、会計処理が正しいことを担保
今後の展開
- 在庫管理システムと販売管理システムもAPI連携
- 経費精算システムと会計ソフトもAPI連携
- 全社的なデータ基盤を構築
API連携 vs RPA:どちらを選ぶか
詳細はRPA vs API連携を参照してください。
選定フローチャート
1. 連携先システムにAPIはあるか?
NO → RPA
YES → 次へ
2. 業務の継続期間は2年以上か?
NO → RPA
YES → 次へ
3. 処理件数は1日100件以上か?
YES → API連携
NO → 次へ
4. 高い信頼性が必要か?(金融、医療、行政など)
YES → API連携
NO → 次へ
5. 初期費用50万円以上を投資できるか?
NO → RPA
YES → API連携
コスト比較(3年間)
| 項目 | RPA | API連携 |
|---|---|---|
| 初期費用 | 20万円 | 200万円 |
| 年間ランニングコスト | 50万円 | 60万円 |
| 3年間総コスト | 170万円 | 380万円 |
| 安定性 | △(画面変更で停止) | ◎(長期安定) |
| 処理速度 | △(1件10秒) | ◎(1件1秒以下) |
結論:
- 短期(1〜2年)、小規模(1日100件未満) → RPA
- 長期(2年以上)、大規模(1日100件以上) → API連携
まとめ
API連携は初期投資が高いですが、長期的には安定性・効率性で圧倒的に優れています。まずは以下の3ステップから始めてください。
- 現状の転記作業を可視化: 月間何時間かかっているか、ミスは何件発生しているか
- API提供有無を確認: 連携したいシステムがAPIを提供しているか、サポートに問い合わせ
- ノーコードツールで小さく始める: ZapierやMakeで簡単な連携から試す
推奨アプローチ
- Phase 1: ノーコードツール(Zapier)で簡単な連携を試す(1〜2週間、費用数千円/月)
- Phase 2: 効果が確認できたら、カスタムAPI連携を本格導入(2〜3か月、費用50〜200万円)
- Phase 3: 複数システムを統合し、全社的なデータ基盤を構築
30〜100名規模の企業であれば、年間100〜300万円のコスト削減効果(転記作業時間削減、ミス削減)を実現できる可能性があります。最初は小さく始めて効果を確認し、段階的に拡大することが成功の近道です。