-
Notifications
You must be signed in to change notification settings - Fork 3.9k
feat(router): introduce feature
and feature_data
to gsm
#7771
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
feature
and feature_data
to gsm
feature
and feature_data
to gsmfeature
and feature_data
to gsm
…ay/hyperswitch into gsm/introduce-domain-models
…ay/hyperswitch into gsm/introduce-domain-models
…ay/hyperswitch into gsm/introduce-domain-models
jarnura
requested changes
Apr 11, 2025
migrations/2025-04-07-133030_add_feature_data_column_to_gsm/up.sql
Outdated
Show resolved
Hide resolved
14 tasks
…/introduce-domain-models
…/introduce-domain-models
…ay/hyperswitch into gsm/introduce-domain-models
…ay/hyperswitch into gsm/introduce-domain-models
jarnura
previously approved these changes
Jul 28, 2025
…ay/hyperswitch into gsm/introduce-domain-models
…/introduce-domain-models
…ay/hyperswitch into gsm/introduce-domain-models
sai-harsha-vardhan
approved these changes
Jul 30, 2025
jarnura
approved these changes
Jul 30, 2025
pixincreate
added a commit
that referenced
this pull request
Aug 1, 2025
…rver * 'main' of github.com:juspay/hyperswitch: (25 commits) chore: `xof` currency to cybersource cards (#8799) chore(version): 2025.08.01.0 feat(core): Implement UCS based upi for paytm and phonepe (#8732) feat(connector): [katapult]add template code for katapult (#8783) feat(router): introduce `feature` and `feature_data` to gsm (#7771) feat(connector): [cybersource] add changes for field CybersourceConsumerAuthInformation (#8768) feat(authentication): added authentication sync api (#8596) feat(connector): [facilitapay] fix refunds, add webhook and void support (#8778) feat(connector): [payload] add recurring payments (#8597) chore(version): 2025.07.31.0 feat(connector): [Flexiti]Add support for flexiti connector (#8743) chore(router): events enhancement for kafka (#8780) ci(cypress): Making a mandate payment with large customer user agents (#8790) fix(openapi): update create_platform endpoint in api-reference docs (#8782) chore(version): 2025.07.30.0 fix(connector): [GLOBALPAY] Added Tokenization Flow for CITs (#8568) feat(routing): Add api-refs for new decision engine endpoints (#8709) fix: replace xtrim with xdel to support older redis version (#8515) fix(connector): [Worldpay] handle multiple ddc submission for CompleteAuthorize (#8741) feat(connector): [Adyen] receive incoming webhooks for pix expiry (#8720) ...
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-payments
Area: payments
C-feature
Category: Feature request or enhancement
M-api-contract-changes
Metadata: This PR involves API contract changes
M-database-changes
Metadata: This PR involves database schema changes
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Type of Change
Description
This pull request includes a number of changes to the
gsm
module across multiple files to introduce new features and improve the existing code structure. The most important changes include the addition of new fields and enums, refactoring of existing enums, and introducing domain models for gsm.Changes to
gsm
module:crates/api_models/src/gsm.rs
:alternate_network_possible
andfeature
toGsmCreateRequest
,GsmUpdateRequest
, andGsmResponse
structs.step_up_possible
andclear_pan_possible
are made as optional in api contract these are retry feature specific dataand might not be present for other features.
crates/common_enums/src/enums.rs
:GsmFeature
to handle GSM decision and feature data.Requeue
as feature us not yet implementedAdditional Changes
Motivation and Context
How did you test it?
Create gsm rule without passing feature and feature data
Db entry

Update rule
"clear_pan_possible": false
Test case of existing records
(manually create db entries like the existing ones and try to update it)

db entry showing feature and feature_data to be null
-> update call will
"clear_pan_possible": true
DB entry after update

Test case for the new change where in which we pass feature and feature data in the request
Note :-
Same goes for db state and update gsm call
-> Update call
-> Test a retry payment
Checklist
cargo +nightly fmt --all
cargo clippy