Skip to content

[NEB-4777] Add KYC, geo, and bot-detection structured fields - #165

Open
rkumar-sift wants to merge 1 commit into
masterfrom
rkumar/NEB-4777-structured-fields
Open

[NEB-4777] Add KYC, geo, and bot-detection structured fields#165
rkumar-sift wants to merge 1 commit into
masterfrom
rkumar/NEB-4777-structured-fields

Conversation

@rkumar-sift

Copy link
Copy Markdown

Purpose

Add support for the new structured fields ($nationality, $year_of_birth, $kyc, $geo, $bot_identification) per the Structured Fields TDD (NEB-4573).

Summary

  • New model classes Kyc, Geo, BotIdentification under com.siftscience.model.
  • Wired into BaseAccountFieldSet, VerificationFieldSet ($kyc only), TransactionFieldSet, BaseOrderFieldSet, LoginFieldSet ($geo/$bot_identification only).
  • Enum-valued fields ($kyc_level, $bot_identification.$result) use $-prefixed string values, consistent with other enum fields in this API (e.g. $login_status).
  • Version bump 3.22.0 → 3.23.0, CHANGES.MD/README.md updated.

Testing

  • Covered with unit tests (one per event type), full suite passing.
  • Tested with real API calls against expr across the full field/event matrix.

Follow-up (tracked separately, not in this PR): structured-fields coverage in sift-java-integration-app is deferred until the server-side schema change (NEB-4775) is live in production — it isn't yet.

@rkumar-sift rkumar-sift self-assigned this Aug 26, 2026
" \"$year_of_birth\" : 1985,\n" +
" \"$kyc\" : {\n" +
" \"$names_match\" : true,\n" +
" \"$kyc_level\" : \"basic\",\n" +

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the values should have the '$' prefix. Here and in other places

" \"$provider\" : \"geocomply\"\n" +
" },\n" +
" \"$bot_identification\" : {\n" +
" \"$result\" : \"human\",\n" +

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the values should have the '$' prefix, as it's enum

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants