🎄

SalesforceでリスクモンスターAPIを使用して反社チェックと与信チェックを行う方法

2024/12/18に公開

本記事は『Salesforce Advent Calendar 2024』の18日目の記事です。
https://qiita.com/advent-calendar/2024/salesforce

1.この記事について

「反社チェックの承認待ち、まだ50社も残ってる...」
「前に確認した記録、どこにいったっけ...」

こんな悩み、覚えありませんか?
取引先管理の効率化は、どの企業にとっても重要な課題です。
特に反社チェック(反社会的勢力との関係性確認)や与信チェック(与信管理)は、企業のリスク管理において必須の業務となります。

この記事では、SalesforceとリスクモンスターAPIを連携させて確認作業を半自動化する方法を、同じ課題に直面している方々に向けて共有します。

2. プロジェクトの背景

とある法務部門...

「新規取引先の確認依頼が毎日のように届くけど、処理が追いつかない」
「1社の確認に30分以上かかるし、急ぎの案件なのに...」

多くの企業が直面するこれらの課題に対し、これらの解決を目指しました。

前提として:

- 法人番号をキーに取引先管理
- リスクモンスターAPIの活用
- カスタムオブジェクト+フロー+Apexを組み合わせた実装

で構築しています。

https://www.riskmonster.co.jp/service/cloud/

3. プロジェクト開始時のAsIs / ToBe整理

As is(現状の課題)

以前は、以下の様に比較的シンプルな形で運用されていました。

  • 毎日1回、新規取引先に対してGoogle検索を実施し、その結果のキャプチャをスプレッドシートに格納
  • その後、担当者が目視で内容を確認し、必要に応じて追加の検索を実施

この作業自体は1日あたり約10分程度で、大きな工数がかかっていませんでした。
また、トラブルや確認漏れは発生していませんでした。

しかし、いくつかの潜在的な課題を抱えていました。

まず業務プロセスには、目視確認による見落としの可能性やヒューマンエラーのリスクが存在し、また判断が担当者の主観に依存している状況でした。
さらに、承認記録の管理面では、過去の記録を検索することが困難で、履歴の追跡にも時間がかかっていました。

To be(目指す姿)

私たちの目的は、より確実で客観的な確認プロセスの実現でした。

1. 確認プロセスの標準化:
- 外部データベース(リスクモンスター)を活用した客観的な判断基準を確立
- 手作業だった承認フローの半自動化により作業時間を削減
- 短期間での重複チェックを防ぐ仕組みの実現

2. 管理体制の強化:
- 人手による確認漏れを完全に防止すること
- 「前回いつ確認したっけ?」という状況を解消すること
- チェック完了前の次フェーズへの移行防止

4.アーキテクチャの選択理由

アーキテクチャの検討

当社のSalesforce開発では、開発効率と保守性の観点からフローを基本としています。

今回のプロジェクトでも、当初は以下の2つの構成案を検討しました:

1. 完全フローベース
2. フローベース+必要最小限のApex(採用案)

採用したアーキテクチャの決定理由

最初は、他のプロジェクトと同様に全てフローで完結させることを目指していました。
しかし、リスクモンスターのAPI仕様を確認したところ、XMLレスポンス形式であることが判明しました。

Salesforceのフローでは、JSON以外の形式でのAPI連携ができないという制約があります。そのため、APIコール部分についてはApexを使用することを決定しました。

この「フロー+Apex」のハイブリッド構成を採用することで、XMLレスポンスの処理という技術的な制約をクリアすることができました。

次の章では、これらの検討結果を踏まえた具体的な実装について説明します。

5. 実装のポイント ~オブジェクト構成から具体的なフローの構成~

オブジェクト構成

本システムは、以下の2つのオブジェクトを中心に構築しています:

  • 取引先(標準オブジェクト):
    • 基本となる法人情報を管理
    • 法人番号による一意識別
  • 与信・反社チェック(カスタムオブジェクト):
    • リスクモンスターAPIからの与信情報を保存
    • チェック履歴の管理

処理フローの実装

前章で説明したフローとApexのハイブリッド構成について、具体的な役割分担を説明します:

  • フローとApexの役割
    • Apex: リスクモンスターAPIとの通信処理、XMLレスポンスのデータ加工、オブジェクトへのデータ登録
    • フロー: 業務ロジックの制御、承認フローの管理、画面遷移の制御

基本的な処理の流れ

  • リスクモンスターAPI呼び出し

    • 与信チェック情報の取得(Apex)
    • 反社情報の取得(Apex)
    • 取得情報から与信・反社チェックカスタムオブジェクトのレコード作成
  • 結果判定・通知

6.実現できたこと

本プロジェクトでは、業務効率と品質の両面で大きな成果を上げることができました。

1. 業務効率の向上:
   チェック作業の半自動化により確認工数を削減し、承認履歴の一元管理を実現
2. 判断基準の客観化:
   リスクモンスターのデータベースを活用することで、客観的な判断基準に基づく評価が可能
3. 業務プロセスの標準化:(記事では触れていませんが)
   短期間での複数回チェックが不要となり、またチェック完了前の次フェーズへの移行防止を実現

7.おわりに

本記事では、SalesforceとリスクモンスターAPIを連携させた反社・与信チェックの半自動化について、プロジェクトの検討から実装、運用までの過程を紹介させていただきました。

この取り組みを通じて、以下のような学びがありました:

- 技術面:
  フローとApexの特性を理解し、それぞれの長所を活かしたハイブリッド構成の有効性
- 運用面:
  現状のプロセスを活かしつつ、効率化ポイントを見極めるポイント

同様の課題に直面されている方々にとって、この記事が何かしらの参考になれば幸いです。

Discussion