KYB onboarding tech stack 2026: Sumsub vs Veriff vs in-house
KYB (Know Your Business) — это compliance-обязанность для любого B2B-payment-flow в digital goods. В отличие от KYC, KYB проверяет не физлицо, а компанию: incorporation, UBO, sanctions, ongoing monitoring. Эта статья — обзор production-стэка KYB на 2026 год.
1. Что должен делать KYB-движок
Минимальный pipeline:
async function onboardBusiness(b: BusinessApplication): Promise<KybDecision> {
await collectDocuments(b); // Certificate of incorp, articles, IDs
await documentAi.extract(b.docs); // OCR + structured fields
await registryLookup(b); // Companies House, US Secretary of State и т.д.
await sanctionsScreen(b); // OFAC, EU, UN, UK
await pepCheck(b.ubos); // Political exposure
const score = riskScore(b);
if (score > 70) return { decision: 'manual_review' };
if (score > 40) return { decision: 'approved_enhanced_monitoring' };
return { decision: 'approved' };
}
Каждый шаг — отдельный compliance-checkpoint с audit-log.
2. Sumsub vs Veriff — production comparison
| Feature | Sumsub | Veriff |
|---|---|---|
| Jurisdiction coverage | 220+ | 190+ |
| KYB API | Yes (full) | Yes (limited) |
| UBO discovery | Auto + manual | Manual upload |
| OCR + Document AI | Industry-leading | Strong |
| Pricing (KYB) | $20–40/applicant | $5–15/applicant |
| Median onboarding time | 18 min | 11 min |
| Conversion (KYB completion) | 81% | 87% |
| Sanctions DB refresh | 4h | 24h |
Sumsub — выбор для compliance-heavy дистрибьюторов (FX, crypto). Veriff — для retail/SaaS B2B, где UX важнее покрытия.
3. Document AI — OCR + LLM extraction
Документы KYB (incorporation cert, articles, ID) поступают как PDF/JPEG. Stack 2026:
# Sumsub style pipeline
from sumsub import Client
sumsub = Client(api_key=os.environ['SUMSUB_KEY'])
applicant = sumsub.applicants.create(level='kyb-business')
sumsub.applicants.add_document(
applicant_id=applicant.id,
file=open('incorporation.pdf', 'rb'),
type='COMPANY_DOC',
sub_type='CERTIFICATE'
)
# Sumsub OCR + LLM extracts: company_name, reg_number, dir_names, address
result = sumsub.applicants.get(applicant.id)
print(result.extracted_data)
Accuracy на западных registries — 95–98%. На emerging markets (LatAm, Africa) — 80–88%, требуется human review.
4. Beneficial-owner graph
UBO-discovery — это рекурсивный обход ownership chain. Для company A → owns 60% B → owns 80% C, эффективный owner C = 0.6 * 0.8 = 48%. Хранение как граф:
CREATE TABLE ownership_edges (
parent_id UUID, -- shareholder (person или company)
child_id UUID, -- owned entity
percentage DECIMAL(5,2),
effective_date DATE,
source TEXT, -- 'registry', 'self_declared'
PRIMARY KEY (parent_id, child_id, effective_date)
);
-- Recursive UBO query
WITH RECURSIVE chain AS (
SELECT parent_id, child_id, percentage AS effective
FROM ownership_edges WHERE child_id = $target
UNION ALL
SELECT e.parent_id, c.child_id, c.effective * e.percentage / 100
FROM chain c JOIN ownership_edges e ON e.child_id = c.parent_id
)
SELECT parent_id FROM chain WHERE effective > 25;
Запускайте ежеквартально на всех verified-партнёрах для re-validation.
CTA
FoxReload использует Sumsub под капотом и пропускает enterprise-партнёров через KYB <24h. Запросите доступ и пройдите onboarding.
