決済プラットフォーム
外部プロバイダや複数サービスにまたがる決済システム。
// Demonstrates: multiple [external] services, complex service topology, deploy diagram// A payment processing platform integrating with card networks and banks.
@import "theme.krs.style"
system PaymentPlatform { label "決済プラットフォーム"
user Merchant { label "加盟店" role "決済APIを利用するオンラインショップ・実店舗" }
user PlatformAdmin [human] { label "プラットフォーム管理者" role "加盟店管理・決済モニタリングを担当する運用者" }
service Gateway { label "決済ゲートウェイ" description "加盟店からの決済リクエストを受け付け、処理フローを制御する"
domain Authorization { label "オーソリ" usecase Authorize { label "決済を承認する" } usecase Capture { label "売上を確定する" } usecase Void { label "オーソリを取り消す" } }
domain Refund { label "返金" usecase RequestRefund { label "返金を申請する" } usecase ProcessRefund { label "返金を実行する" } } }
service RiskEngine { label "リスク判定エンジン" description "不正検知・トランザクションスコアリング"
domain FraudDetection { label "不正検知" usecase ScoreTransaction { label "トランザクションをスコアリングする" } usecase BlockSuspicious { label "疑わしい取引をブロックする" } } }
service Ledger { label "台帳サービス" description "売上・手数料・精算の記録管理"
domain Settlement { label "精算" usecase RecordTransaction { label "取引を記録する" } usecase CalculateFee { label "手数料を計算する" } usecase SettleToMerchant { label "加盟店へ振り込む" } } }
// External card networks service VisaNet [external] { label "Visa Net" description "Visaカード決済ネットワーク" }
service MasterNet [external] { label "Mastercard Network" description "Mastercardカード決済ネットワーク" }
// External banking partner service BankAPI [external] { label "銀行API" description "加盟店への精算振込を行うパートナー銀行" }
// External compliance service service ThreeDSecure [external] { label "3-D Secure" description "本人確認のための3Dセキュア認証サービス" }
Merchant -> Gateway "決済リクエストを送る" PlatformAdmin -> Gateway "決済状況をモニタリングする" PlatformAdmin -> Ledger "精算レポートを確認する" Gateway -> RiskEngine "不正スコアを取得する" Gateway -> ThreeDSecure "本人確認を行う" Gateway -> VisaNet "Visa決済を処理する" Gateway -> MasterNet "Mastercard決済を処理する" Gateway --> Ledger "取引を記録する" Ledger --> BankAPI "加盟店へ振り込む"}
deploy Production { label "本番環境 (AWS)"
// Gateway as an executable JAR (Spring Boot) jar "gateway-service" { label "決済ゲートウェイ" runtime "Java 21 / Spring Boot 3" realizes Gateway }
// Risk engine as a container (GPU-enabled scoring) oci "risk-engine" { label "リスク判定エンジン" image "risk-engine:2.0.4" runtime "Python 3.12 / FastAPI" realizes RiskEngine }
// Lightweight fraud check as a serverless function lambda "fraud-check" { label "不正チェック関数" runtime "Node.js 22" realizes RiskEngine }
// Ledger as a container oci "ledger-service" { label "台帳サービス" image "ledger:1.8.2" runtime "Go 1.22" realizes Ledger }
// Admin dashboard as a static SPA assets "admin-dashboard" { label "管理ダッシュボード" runtime "CloudFront / S3" }
// One-off migration job (no schedule = single run) job "ledger-migration" { label "台帳データ移行" runtime "Python 3.12" }
// Daily settlement batch (runs every night at 2am JST) job "daily-settlement" { label "日次精算バッチ" schedule "0 17 * * *" runtime "Java 21" realizes Ledger }
// Monthly fee report job "monthly-fee-report" { label "月次手数料レポート" schedule "0 2 1 * *" runtime "Python 3.12" realizes Ledger }}© 2026 Hiroki Kondo · Licensed under Apache-2.0