GBG Identity Verification and Fraud Risk Management
integration for HomeChoice. Provides identity checks,
document verification, fraud scoring, and AML screening
through GBG's API platform.
| Product | Method | Purpose |
|---|---|---|
| ID3global | verify_identity() |
Identity data verification against SA bureaux |
| IDscan | verify_document() |
Document image verification (ID, passport) |
| Instinct | check_fraud_risk() |
ML fraud risk scoring (0-1000) |
| Predator | screen_aml() |
PEPs, sanctions, AML screening |
Add to config.yaml:
base:
gbg:
client_id: <your-gbg-client-id>
client_secret: <your-gbg-client-secret>
api_url: https://api.gbgplc.com
token_url: https://api.gbgplc.com/oauth/token
Or add to def_remoteconnections:
INSERT INTO def_remoteconnections
(remote, remoteurl, username, remotepassword)
VALUES
('gbg', 'https://api.gbgplc.com',
'<client_id>', '<client_secret>');
Use via the SERVICE workflow node type:
node_type: SERVICE
service_code: GBG_VERIFY
context:
command: verify
id_number: $id_number$
first_name: $first_name$
surname: $surname$
dob: $dob$
Output context keys:
_gbg_status — verified / not_verified / error_gbg_result — full JSON responsenode_type: SERVICE
service_code: GBG_DOCUMENT
context:
command: document
id_number: $id_number$
document_image_url: $selfie_url$
node_type: SERVICE
service_code: GBG_FRAUD
context:
command: fraud
id_number: $id_number$
cell_number: $cell_no$
email: $email$
Output context keys:
_gbg_status — low / medium / high / critical_gbg_risk_score — 0 to 1000_gbg_risk_level — low / medium / high / criticalnode_type: SERVICE
service_code: GBG_AML
context:
command: aml
id_number: $id_number$
first_name: $first_name$
surname: $surname$
Output context keys:
_gbg_status — clear / flagged / error_gbg_result — JSON with pep_match, sanctions_matchAPI (ingest application)
→ SERVICE (GBG_VERIFY: identity check)
→ SERVICE (GBG_FRAUD: risk scoring)
→ DECISION (risk threshold)
→ [low risk] → SERVICE (originate account)
→ [high risk] → SERVICE (GBG_AML: AML screen)
→ DECISION (AML result)
→ [clear] → manual review queue
→ [flagged] → auto-decline + SAFPS report
Results cached in bloom_gbg table:
(Guid, CheckType) where Guid = ID number# Identity verification
python ObjServiceGBG.py verify --id-number 8001015009087
# Fraud risk check
python ObjServiceGBG.py fraud --id-number 8001015009087
# AML screening
python ObjServiceGBG.py aml --id-number 8001015009087
| Score | Level | Action |
|---|---|---|
| 0-399 | Low | Auto-approve |
| 400-599 | Medium | Manual review |
| 600-799 | High | Enhanced due diligence |
| 800-1000 | Critical | Auto-decline |
ObjServiceSAFPS.py — SAFPS fraud prevention (similar pattern)ObjServiceHCExperian.py — Experian bureau integrationObjServiceXds.py — XDS credit bureau