Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(core): added is_terminated field in fraud_check table to support 3ds flow #1936

Closed
wants to merge 1 commit into from

Conversation

rishavkar
Copy link
Contributor

@rishavkar rishavkar commented Aug 16, 2023

Type of Change

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

Description

Currently, frm module dosent work for 3ds flow.
It is because, payments operation core is called multiple times in the same request, and so is pre and post frm.
This creates duplicate entries, and also creates discrepencies.
To fix this, we are adding a field is_terminated in the fraud check table. This is to indicate that the frm flow has ended, and no furthur frm calls are to be made for the payment(be that 2nd 3ds call, or psync etc)

Additional Changes

  • This PR modifies the API contract
  • This PR modifies the database schema
  • This PR modifies application configuration/environment variables
  • is_terminated is added to table fraud_check.

Motivation and Context

How did you test it?

  • do a 3ds flow, with frm.
  • for both pre and post flow, at the end of the flow, the is_terminated field should be set to true in the fraud_check table.
  • for pre flow, signifyd should be called twice(once before and once after transaction), not 4 times.
  • for post flow, it should be called only hitting the redirection link, and completing the authentication, i.e., only after the transaction is complete,i.e., frm should be called just once, not twice.

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
  • I added a CHANGELOG entry if applicable

@rishavkar rishavkar requested a review from a team as a code owner August 16, 2023 06:19
@github-actions github-actions bot added the S-conventions-not-followed Status: This PR does not follow contributing guidelines label Aug 16, 2023
@rishavkar rishavkar changed the title added is_terminated field in fraud_check table to support 3ds flow fix(core): added is_terminated field in fraud_check table to support 3ds flow Aug 16, 2023
@github-actions github-actions bot removed the S-conventions-not-followed Status: This PR does not follow contributing guidelines label Aug 16, 2023
@rishavkar rishavkar self-assigned this Aug 16, 2023
@rishavkar rishavkar added A-core Area: Core flows C-bug Category: Bug P-high Priority: High S-waiting-on-review Status: This PR has been implemented and needs to be reviewed M-database-changes Metadata: This PR involves database schema changes labels Aug 16, 2023
@jagan-jaya
Copy link
Contributor

Closing in favour of #1944

@jagan-jaya jagan-jaya closed this Sep 1, 2023
@SanchithHegde SanchithHegde deleted the fix_frm_for_3ds branch September 4, 2023 20:59
@SanchithHegde SanchithHegde removed P-high Priority: High S-waiting-on-review Status: This PR has been implemented and needs to be reviewed labels Sep 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-core Area: Core flows C-bug Category: Bug M-database-changes Metadata: This PR involves database schema changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants