Skip to content

feat(router): add payment method-specific features to connector feature list#6963

Merged
likhinbopanna merged 8 commits intomainfrom
feature-matrix-v2
Jan 21, 2025
Merged

feat(router): add payment method-specific features to connector feature list#6963
likhinbopanna merged 8 commits intomainfrom
feature-matrix-v2

Conversation

@AkshayaFoiger
Copy link
Contributor

@AkshayaFoiger AkshayaFoiger commented Dec 31, 2024

Type of Change

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

Description

This PR extends the connector feature matrix response to include threeds and non_threeds support flags along with card network details in case of cards

This PR won't affect Payments

Additional Changes

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

How did you test it?

curl --location 'http://localhost:8080/feature_matrix' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: test_admin'

Response

{
    "connector_count": 3,
    "connectors": [
        {
            "name": "BAMBORA",
            "description": "Bambora is a leading online payment provider in Canada and United States.",
            "category": "payment_gateway",
            "supported_payment_methods": [
                {
                    "payment_method": "card",
                    "payment_method_type": "credit",
                    "mandates": "not_supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "three_ds": "supported",
                    "non_three_ds": "supported",
                    "supported_card_networks": [
                        "Visa",
                        "Mastercard",
                        "AmericanExpress",
                        "Discover",
                        "JCB",
                        "DinersClub"
                    ],
                    "supported_countries": [
                        "CA",
                        "US"
                    ],
                    "supported_currencies": [
                        "USD"
                    ]
                }
            ],
            "supported_webhook_flows": []
        },
        {
            "name": "DEUTSCHEBANK",
            "description": "Deutsche Bank is a German multinational investment bank and financial services company ",
            "category": "bank_acquirer",
            "supported_payment_methods": [
                {
                    "payment_method": "bank_debit",
                    "payment_method_type": "sepa",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "supported_countries": null,
                    "supported_currencies": null
                },
                {
                    "payment_method": "card",
                    "payment_method_type": "credit",
                    "mandates": "not_supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "three_ds": "supported",
                    "non_three_ds": "not_supported",
                    "supported_card_networks": [
                        "Visa",
                        "Mastercard"
                    ],
                    "supported_countries": null,
                    "supported_currencies": null
                }
            ],
            "supported_webhook_flows": []
        },
        {
            "name": "ZSL",
            "description": "Zsl is a payment gateway operating in China, specializing in facilitating local bank transfers",
            "category": "payment_gateway",
            "supported_payment_methods": [
                {
                    "payment_method": "bank_transfer",
                    "payment_method_type": "local_bank_transfer",
                    "mandates": "not_supported",
                    "refunds": "not_supported",
                    "supported_capture_methods": [
                        "automatic"
                    ],
                    "supported_countries": [
                        "CN"
                    ],
                    "supported_currencies": [
                        "CNY"
                    ]
                }
            ],
            "supported_webhook_flows": []
        }
    ]
}

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

@AkshayaFoiger AkshayaFoiger requested review from a team as code owners December 31, 2024 10:48
@semanticdiff-com
Copy link

semanticdiff-com bot commented Dec 31, 2024

@AkshayaFoiger AkshayaFoiger self-assigned this Dec 31, 2024
@AkshayaFoiger AkshayaFoiger added C-doc Category: Documentation updates C-feature Category: Feature request or enhancement labels Dec 31, 2024
@AkshayaFoiger AkshayaFoiger linked an issue Dec 31, 2024 that may be closed by this pull request
2 tasks
@hyperswitch-bot hyperswitch-bot bot added the M-api-contract-changes Metadata: This PR involves API contract changes label Dec 31, 2024
@Narayanbhat166
Copy link
Contributor

@AkshayaFoiger are we not validating these extra supported features when making the payment?

Narayanbhat166
Narayanbhat166 previously approved these changes Jan 2, 2025
jarnura
jarnura previously approved these changes Jan 2, 2025
@AkshayaFoiger
Copy link
Contributor Author

AkshayaFoiger commented Jan 2, 2025

@AkshayaFoiger are we not validating these extra supported features when making the payment?

Yes, currently we are not validating these extra features while making a payment with the connector. These validations will be taken as phase 2 changes

deepanshu-iiitu
deepanshu-iiitu previously approved these changes Jan 7, 2025
jarnura
jarnura previously approved these changes Jan 7, 2025
@AkshayaFoiger AkshayaFoiger dismissed stale reviews from jarnura and deepanshu-iiitu via c9be061 January 15, 2025 11:49
@likhinbopanna likhinbopanna added this pull request to the merge queue Jan 21, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jan 21, 2025
@likhinbopanna likhinbopanna added this pull request to the merge queue Jan 21, 2025
Merged via the queue into main with commit e35f707 Jan 21, 2025
25 of 27 checks passed
@likhinbopanna likhinbopanna deleted the feature-matrix-v2 branch January 21, 2025 09:36
pixincreate added a commit that referenced this pull request Jan 24, 2025
…d-memory-cache

* 'main' of github.com:juspay/hyperswitch: (38 commits)
  fix(cypress): uncaught exceptions thrown by `hyperswitch.io` (#7092)
  ci(workflows): Add code coverage reporting for v2 (#6884)
  chore(version): 2025.01.23.0
  refactor: [CYBERSOURCE, BANKOFAMERICA, WELLSFARGO] Move code to crate hyperswitch_connectors (#6908)
  Documentation edits made through Mintlify web editor
  chore: enable 128-column-tables feature for diesel crate (#6857)
  feat(connector): [ADYEN ] Consume transaction id for PaymentsPreProcessing error (#7061)
  chore(version): 2025.01.22.0
  feat(routing): Integrate global success rates (#6950)
  feat(email): Add mailhog by default in docker-compose for local smtp server (#6869)
  refactor: check allowed payment method types in enabled options (#7019)
  feat(router): add payment method-specific features to connector feature list (#6963)
  Refactor: Customer email and browser Information (#7034)
  feat(connectors): fiuu,novalnet,worldpay - extend NTI flows (#6946)
  fix(cypress): address cybersource redirection inconsistency (#7057)
  chore(version): 2025.01.21.0
  refactor(payment-link): use shouldRemoveBeforeUnloadEvents flag for handling removal of beforeunload events through SDK (#7072)
  refactor(router): refactor ctp flow to fetch mca_id and get the connector creds instead of connector_name (#6859)
  chore(version): 2025.01.20.0
  fix(relay): populate connector metadata in the refunds flow (#7045)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

C-doc Category: Documentation updates C-feature Category: Feature request or enhancement M-api-contract-changes Metadata: This PR involves API contract changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] add endpoint for listing connector features

5 participants