🛒 Shopify管理 システム概要
API連携特化・PII完全分離アーキテクチャ
CLI/SDK不使用、純粋REST API統合による高セキュリティECシステム
🌟 システムの特徴
🔒 PII完全分離: ShopifyのみにPII保存、D1/R2は非PIIのみ
⚡ レート制限対策: Cloudflare Queues + Workers で40req/min制限完全解決
🔧 API連携特化: CLI/SDK不使用、純粋REST API統合
🛡️ セキュリティ重視: 三点検証システム + EXIF UID埋め込み
🎯 マルチブランド: 1ストアでneko + tokinoe統合管理
🏗️ Shopify統合アーキテクチャ
全体構成図
graph TB
subgraph "フロントエンド"
A1[猫アプリ Web]
A2[時の絵 Web]
A3[管理画面]
end
subgraph "Cloudflare Workers BFF"
B1[認証処理]
B2[Shopify API統合]
B3[Queue Management]
end
subgraph "Shopify(PII唯一保存場所)"
C1[Storefront API]
C2[Admin API]
C3[Webhooks]
C4[顧客データ PII]
C5[注文データ PII]
end
subgraph "Cloudflare Infrastructure"
D1[D1 Database 非PII]
D2[R2 Storage 非PII]
D3[Workers Queue]
end
subgraph "外部認証"
E1[Firebase Auth]
end
A1 --> B1
A2 --> B1
A3 --> B1
B1 --> E1
B2 --> C1
B2 --> C2
B3 --> C3
B2 --> D1
B2 --> D2
B3 --> D3
📊 データ分離戦略(PII完全分離)
🔒 Shopify保存データ(PII)
顧客情報:
- 氏名、住所、電話番号
- メールアドレス
- 決済情報
注文情報:
- 配送先住所
- 請求先住所
- 決済履歴
🌐 Cloudflare保存データ(非PII)
D1 Database:
- Firebase UID(匿名識別子)
- 商品メタデータ
- 注文ステータス(非PII部分)
- ブランド管理情報
R2 Storage:
- アップロード画像(EXIF UID埋め込み済み)
- 処理済み印刷データ
- サムネイル・プレビュー
⚡ API制限対策システム
🔄 Cloudflare Queues統合
graph LR
A[API Request] --> B[BFF Workers]
B --> C{Rate Limit?}
C -->|OK| D[Direct Shopify API]
C -->|LIMIT| E[Queue System]
E --> F[Batch Processing]
F --> G[Shopify API 40req/min]
G --> H[Response]
style E fill:#f9f,stroke:#333,stroke-width:2px
style F fill:#bbf,stroke:#333,stroke-width:2px
制限対策効果:
- 🚫 Shopify 429エラー: 0%達成
- ⚡ 応答速度: 同期2秒以内、非同期30秒以内
- 📈 スループット: 無制限(Queue処理)
🔐 セキュリティ・認証システム
三点検証システム
検証ポイント:
1. Order ID: Shopify注文ID
2. Customer ID: Shopify顧客ID
3. Firebase UID: 認証システムUID
工場システム対策:
- 一時データ取得のみ(保存禁止)
- EXIF UID埋め込み検証
- SHA-256ハッシュ検証
🎯 ブランド管理戦略
1ストア・マルチブランド運用
| ブランド | 識別方式 | 商品管理 | データ分離 |
|---|---|---|---|
| 🐱 猫アプリ | メタフィールド brand: neko | 89mm写真プリント | Firebase UID別 |
| 🎨 時の絵 | メタフィールド brand: tokinoe | Canvas合成アート | Firebase UID別 |
🔧 必要なShopify設定項目
1. App作成・権限設定
- Shopify Partner Account作成
- カスタムApp作成
- API権限設定 (詳細は個別マニュアル参照)
2. API Key管理
- Storefront API Access Token
- Admin API Access Token
- Webhook Secret Key
3. Webhook設定
- 注文作成 (
orders/create) - 注文更新 (
orders/updated) - 顧客作成 (
customers/create)
4. ストア設定
- メタフィールド定義
- 商品テンプレート設定
- 配送設定
📋 設定マニュアル一覧
| マニュアル | 内容 | 重要度 |
|---|---|---|
| App作成・権限設定 | Shopify App作成手順 | 🔴 必須 |
| API連携設定 | REST API統合設定 | 🔴 必須 |
| Webhook設定 | Webhook統合設定 | 🔴 必須 |
| セキュリティ設定 | PII分離・認証設定 | 🔴 必須 |
| ブランド設定 | マルチブランド管理 | 🟡 重要 |
| 監視・ログ設定 | 運用監視設定 | 🟡 重要 |
🚀 クイックスタート
初回セットアップ手順
- Shopify Partner Account 作成
- カスタムApp 作成・権限設定
- API Key 取得・設定
- Webhook エンドポイント設定
- Cloudflare Workers 統合テスト
- 本番環境 デプロイ
⏱️ 所要時間
- 基本設定: 2-3時間
- API統合: 4-6時間
- セキュリティ設定: 2-3時間
- テスト・検証: 3-4時間
- 合計: 約1-2日
📍 次のステップ: App作成・権限設定 から開始してください。
文書作成日: 2025-08-23
最終更新: 2025-08-23
バージョン: 1.0 - API連携特化版