Skip to content

feat: add support for 3ds exemption rules in euclid crate#8013

Merged
likhinbopanna merged 1 commit intomainfrom
add-support-for-3ds-decision-rules-in-euclid-crate
May 16, 2025
Merged

feat: add support for 3ds exemption rules in euclid crate#8013
likhinbopanna merged 1 commit intomainfrom
add-support-for-3ds-decision-rules-in-euclid-crate

Conversation

@sai-harsha-vardhan
Copy link
Contributor

@sai-harsha-vardhan sai-harsha-vardhan commented May 13, 2025

Type of Change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring
  • Dependency updates
  • Documentation
  • CI/CD

Description

add support for 3ds exemption rules in euclid crate

add
DirKeyKind::IssuerName - Name of the card issuing bank
DirKeyKind::IssuerCountry - Country of the card issuing bank
DirKeyKind::CustomerDevicePlatform - Platform of the customer's device (Web, Android, iOS)
DirKeyKind::CustomerDeviceType - Type of the customer's device (Mobile, Tablet, Desktop, Gaming Console)
DirKeyKind::CustomerDeviceDisplaySize - Display size of the customer's device (e.g., 500x600)
DirKeyKind::AcquirerCountry - Country of the acquiring bank
DirKeyKind::AcquirerFraudRate - Fraud rate of the acquiring bank

These keys would be required for setting up 3DS Exemption Rules
Possible outcomes for 3DS decision rules:
/// No 3DS authentication required
NoThreeDs,
/// Mandate 3DS Challenge
ChallengeRequested,
/// Prefer 3DS Challenge
ChallengePreferred,
/// Request 3DS Exemption, Type: Transaction Risk Analysis (TRA)
ThreeDsExemptionRequestedTra,
/// Request 3DS Exemption, Type: Low Value Transaction
ThreeDsExemptionRequestedLowValue,
/// No challenge requested by merchant (e.g., delegated authentication)
IssuerThreeDsExemptionRequested,

Additional Changes

  • This PR modifies the API contract
  • This PR modifies the database schema
  • This PR modifies application configuration/environment variables

Motivation and Context

How did you test it?

Compiler guided

Checklist

  • I formatted the code cargo +nightly fmt --all
  • I addressed lints thrown by cargo clippy
  • I reviewed the submitted code
  • I added unit tests for my changes where possible

@sai-harsha-vardhan sai-harsha-vardhan added this to the May 2025 Release milestone May 13, 2025
@sai-harsha-vardhan sai-harsha-vardhan self-assigned this May 13, 2025
@sai-harsha-vardhan sai-harsha-vardhan requested review from a team as code owners May 13, 2025 10:32
@sai-harsha-vardhan sai-harsha-vardhan added A-core Area: Core flows C-feature Category: Feature request or enhancement A-routing Area: Routing labels May 13, 2025
@semanticdiff-com
Copy link

semanticdiff-com bot commented May 13, 2025

Review changes with  SemanticDiff

Changed Files
File Status
  crates/euclid_wasm/src/lib.rs  16% smaller
  crates/euclid/src/types.rs  10% smaller
  crates/euclid/src/frontend/dir/enums.rs  5% smaller
  crates/common_types/src/lib.rs  0% smaller
  crates/common_types/src/three_ds_decision_rule_engine.rs  0% smaller
  crates/euclid/src/dssa/graph.rs  0% smaller
  crates/euclid/src/frontend/ast/lowering.rs  0% smaller
  crates/euclid/src/frontend/dir.rs  0% smaller
  crates/euclid/src/frontend/dir/lowering.rs  0% smaller

@sai-harsha-vardhan sai-harsha-vardhan changed the title feat: add support for 3ds decision rules in euclid crate feat: add support for 3ds exemption rules in euclid crate May 14, 2025
Copy link
Contributor

@Aprabhat19 Aprabhat19 left a comment

Choose a reason for hiding this comment

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

Can you add it in kgraph utils as well

@likhinbopanna likhinbopanna added this pull request to the merge queue May 16, 2025
Merged via the queue into main with commit 34dd99d May 16, 2025
27 of 35 checks passed
@likhinbopanna likhinbopanna deleted the add-support-for-3ds-decision-rules-in-euclid-crate branch May 16, 2025 14:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-core Area: Core flows A-routing Area: Routing C-feature Category: Feature request or enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants