July 2026
4 months ago
In July, we launched the Business Verification (KYB) APIs with full questionnaire and custom dictionary support, aligned Individual profiles with wire contracts, added AML alert webhooks, and unified the application submission interface.
2026-07-30 — KYB Open Platform contract sync (Applications + errors + shareRatio)
Aligned Business and Questionnaire OpenAPI with live api-kyb-open-platform controllers.
Changed
- Applications API unified submission:
POST /v1/business/applicationswithmode(FORM|STRUCTURED) and nested payloadsGET /v1/business/applicationswith cursor pagination (replacesPOST /applications/pageoffset)GET /v1/business/applications/{applicationId}(removes/detailsuffix)POST /v1/business/applications/{applicationId}/documents(replacesPATCH)- Form payload field names:
subjectQuestions,associatedProfiles[].entities[].questions - List row shape: dropped
profileId, addedsteps[]
- Errors: Business, Questionnaire, Dictionary paths now
$refsharedopenapi/components/responses/errors.yaml- Removed KYB-only
open-platform-errors.yamloverlay
- Removed KYB-only
- Shareholding fields:
ShareholderInfo.ownerships→shareRatio- Application detail:
sharedRatio→shareRatio
- Custom fields: response items use
CustomFieldItem(fieldId/fieldValue) at the Open API boundary
Removed
- Path files:
applications_form.yaml,applications_structured.yaml,applications_page.yaml,applications_{applicationId}_detail.yaml openapi/components/responses/open-platform-errors.yaml
2026-07-28 — Individual Profile wire contract (UPPER_SNAKE + WriteAck)
Aligned Individual profiles with Helios Tenant Open API wire format.
Changed
- Profile enums now UPPER_SNAKE:
- Lifecycle:
INIT,ACTIVE,INACTIVE - IdDoc category:
DOC,SELFIE - Address category:
FIXED,VERIFIED - AML switch:
ENABLED,DISABLED - Risk tag source:
AML,DEVICE,SELFIE
- Lifecycle:
- Create / Update / Activate success responses: switched from full
ProfiletoProfileWriteAck- Contains:
profileId,externalUserId,status
- Contains:
- Profile lookup by externalUserId: canonical form
GET /v1/individual/profiles?externalUserId=...- Legacy routes remain accepted with
Deprecation: @1785369600(2026-07-30) header - New integrations must use
profileIdfor subsequent operations
- Legacy routes remain accepted with
- Errors: shared
InternalErrortype renamedinternal_error→api_error- Added
ServiceUnavailable(503) for Profile create failures - Updated
docs/guides/errors.md
- Added
2026-07-23 — AML Alert Create Webhook
New webhook event for AML alert creation monitoring.
Added
AML_ALERT_CREATEwebhook: Triggered when a new AML alert is created (screening, re-screening, or ongoing monitoring)- Fields:
profileId,caseId,alertId,createdAt
- Fields:
- Integration manual: Updated
scripts/generate-aml-manual.pyto includeAML_ALERT_CREATEevent
2026-07-09 — KYB Business Verification, Questionnaire & Dictionary APIs
Launch of complete Business Verification (KYB) platform with questionnaires and custom dictionaries.
Added
- Business Applications API (
/v1/business/applications/):POST /form— Submit via questionnairePOST /structured— Submit via structured payloadPOST /page— List applications (paginated)GET /{applicationId}/detail— Get detailGET /{applicationId}/checks— Get risk checksPATCH /{applicationId}/documents— Attach documents
- Business Checks API (
/v1/business/checks/):POST /matches— Basic registry existencePOST /standard_checks— Standard verificationPOST /enhanced_checks— Enhanced with officers & shareholdersPOST /bo_checks— Beneficial owner verificationGET /{id}— Retrieve check result
- Business Documents API (
/v1/business/documents/):POST /— Upload document (10MB limit)GET /{documentId}— Download document
- Questionnaire API (
/v1/business/questionnaires/):GET /{questionnaireId}— Preview questionnaire structure
- Dictionary API (
/v1/business/dictionaries/):POST /— Create custom field definition
- Schemas: Full KYB domain model (30+ enums, request/response objects)
- Webhooks:
BUSINESS_VERIFICATION_STATUS,KYB_APPLICATION_STATUS_CHANGE,KYB_IDV_EMAIL,KYB_QNRE_EMAIL
Changed
redocly.yaml— Registeredbusiness,questionnaire,dictionarygroupspackage.json— Added scripts for new groupsscripts/lint.sh— Added validation for new groups
Removed
openapi/kyb.yaml— Superseded bybusiness.yamlopenapi/paths/kyb/— Replaced bypaths/business/