Skip to content

feat(connector): add integration status to feature matrix #8351

Merged
Gnanasundari24 merged 39 commits intomainfrom
feature-matrix-stripe
Aug 21, 2025
Merged

feat(connector): add integration status to feature matrix #8351
Gnanasundari24 merged 39 commits intomainfrom
feature-matrix-stripe

Conversation

@AkshayaFoiger
Copy link
Contributor

@AkshayaFoiger AkshayaFoiger commented Jun 16, 2025

Type of Change

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

Description

This PR,

  1. Adds integration status to feature matrix
    In the response of the feature matrix query, integration status for each connector is added.

  2. Fill stripe's feature data
    Stripe's feature data is carefully filled by taking reference from https://docs.stripe.com/payments/payment-methods/payment-method-support. In case the payment method being global, all the countries and currencies supported by hyperswitch is considered supported

  3. As Description and connector category is added to the connectors. We have made the supported payment methods optional in the feature matrix response. Have updated cypress_test accordingly

Screenshot 2025-07-30 at 2 00 42 PM

How did you test it?

The Cypress test case ran by default on this PR. It will help verify the supported capture and payment methods.

Test for feature matrix.
Ensure if integration_status is present in the response of Feature Matrix

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

Response

{
    "connector_count": 89,
    "connectors": [
        {
            "name": "ACI",
            "display_name": "ACI",
            "description": "ACI Payments delivers secure, real-time electronic payment solutions for businesses, banks, and governments, enabling seamless transactions across channels.",
            "category": "payment_gateway",
            "integration_status": "alpha",
            "supported_payment_methods": [
                {
                    "payment_method": "wallet",
                ....

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

Summary by CodeRabbit

  • New Features

    • Added an integration status indicator for connectors with statuses: "live", "sandbox", "beta", and "alpha".
    • Expanded and standardized Stripe payment method filters with detailed country and currency support.
    • Introduced multiple new payment methods with specific geographic and currency coverage in configuration files.
  • Documentation

    • Updated API documentation to include the integration status field and its possible values for connectors.

@AkshayaFoiger AkshayaFoiger self-assigned this Jun 16, 2025
@AkshayaFoiger AkshayaFoiger requested review from a team as code owners June 16, 2025 10:25
@semanticdiff-com
Copy link

semanticdiff-com bot commented Jun 16, 2025

Review changes with  SemanticDiff

Changed Files
File Status
  crates/router/src/routes/feature_matrix.rs  84% smaller
  cypress-tests/cypress/support/commands.js  81% smaller
  crates/openapi/src/openapi.rs  61% smaller
  crates/openapi/src/openapi_v2.rs  61% smaller
  crates/hyperswitch_connectors/src/connectors/bitpay.rs  60% smaller
  crates/hyperswitch_connectors/src/connectors/digitalvirgo.rs  60% smaller
  crates/hyperswitch_connectors/src/connectors/bluecode.rs  60% smaller
  crates/hyperswitch_connectors/src/connectors/coingate.rs  60% smaller
  crates/hyperswitch_connectors/src/connectors/fiuu.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/redsys.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/worldpayvantiv.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/worldpayxml.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/paytm.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/adyen.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/bambora.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/bamboraapac.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/cashtocode.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/checkout.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/coinbase.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/dlocal.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/facilitapay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/globalpay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/globepay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/gocardless.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/helcim.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/iatapay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/itaubank.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/mifinity.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/mollie.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/nexinets.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/nexixpay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/nordea.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/nuvei.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/paybox.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/payu.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/phonepe.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/powertranz.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/prophetpay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/rapyd.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/razorpay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/shift4.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/square.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/volt.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/worldline.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/zen.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/zsl.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/jpmorgan.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/aci.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/affirm.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/airwallex.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/authipay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/authorizedotnet.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/billwerk.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/blackhawknetwork.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/bluesnap.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/braintree.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/breadpay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/checkbook.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/dwolla.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/elavon.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/fiserv.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/flexiti.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/forte.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/getnet.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/hipay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/katapult.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/klarna.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/moneris.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/mpgs.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/multisafepay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/novalnet.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/opennode.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/payload.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/paystack.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/placetopay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/santander.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/sift.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/silverflow.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/stax.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/tokenio.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/trustpayments.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/worldpay.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/xendit.rs  59% smaller
  crates/hyperswitch_connectors/src/connectors/barclaycard.rs  58% smaller
  crates/hyperswitch_connectors/src/connectors/deutschebank.rs  58% smaller
  crates/hyperswitch_connectors/src/connectors/fiservemea.rs  58% smaller
  crates/hyperswitch_connectors/src/connectors/inespay.rs  58% smaller
  crates/hyperswitch_connectors/src/connectors/tsys.rs  58% smaller
  crates/hyperswitch_connectors/src/connectors/wellsfargo.rs  58% smaller
  crates/hyperswitch_connectors/src/connectors/celero.rs  56% smaller
  crates/hyperswitch_connectors/src/connectors/hyperwallet.rs  45% smaller
  crates/hyperswitch_domain_models/src/router_response_types.rs  44% smaller
  crates/api_models/src/feature_matrix.rs  38% smaller
  crates/hyperswitch_connectors/src/connectors/adyenplatform.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/ebanx.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/juspaythreedsserver.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/nomupay.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/payone.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/riskified.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/signifyd.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/thunes.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/wellsfargopayout.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/wise.rs  30% smaller
  crates/hyperswitch_connectors/src/connectors/taxjar.rs  27% smaller
  crates/hyperswitch_connectors/src/connectors/gpayments.rs  24% smaller
  api-reference/v1/openapi_spec_v1.json  19% smaller
  api-reference/v2/openapi_spec_v2.json  19% smaller
  crates/hyperswitch_connectors/src/connectors/threedsecureio.rs  19% smaller
  crates/hyperswitch_connectors/src/connectors/netcetera.rs  19% smaller
  crates/hyperswitch_connectors/src/connectors/stripe.rs  2% smaller
  config/deployments/integration_test.toml Unsupported file format
  config/deployments/production.toml Unsupported file format
  config/deployments/sandbox.toml Unsupported file format
  config/development.toml Unsupported file format
  config/docker_compose.toml Unsupported file format
  connector-template/mod.rs Unsupported file format
  crates/common_enums/src/enums.rs  0% smaller
  crates/router/src/types/api.rs  0% smaller
  crates/router/src/types/api/feature_matrix.rs  0% smaller

@AkshayaFoiger AkshayaFoiger added A-connector-integration Area: Connector integration M-api-contract-changes Metadata: This PR involves API contract changes labels Jun 16, 2025
@hyperswitch-bot hyperswitch-bot bot removed the M-api-contract-changes Metadata: This PR involves API contract changes label Jun 16, 2025
@hyperswitch-bot hyperswitch-bot bot added the M-api-contract-changes Metadata: This PR involves API contract changes label Jun 16, 2025
@AkshayaFoiger
Copy link
Contributor Author

@coderabbitai review

@coderabbitai
Copy link

coderabbitai bot commented Jun 17, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai
Copy link

coderabbitai bot commented Jun 17, 2025

Walkthrough

This update introduces a new integration_status field to connector metadata across the codebase and API schemas. The field, represented by a new enum with values like "live", "sandbox", "beta", and "alpha", is added to connector information structures, OpenAPI specifications, and configuration files, standardizing how integration status is reported and documented.

Changes

File(s) Change Summary
crates/common_enums/src/enums.rs Added new enum ConnectorIntegrationStatus with variants: Live, Sandbox, Beta, Alpha.
crates/api_models/src/feature_matrix.rs Added optional integration_status field to ConnectorFeatureMatrixResponse struct.
crates/hyperswitch_domain_models/src/router_response_types.rs Added integration_status field to ConnectorInfo struct.
crates/hyperswitch_connectors/src/connectors/*.rs Added integration_status field to each connector's static *_CONNECTOR_INFO struct, set to the appropriate enum value.
crates/hyperswitch_connectors/src/connectors/stripe.rs Implemented detailed ConnectorSpecifications for Stripe, including static connector info with integration_status: Live.
crates/router/src/routes/feature_matrix.rs Modified build_connector_feature_details to populate integration_status in response.
crates/openapi/src/openapi.rs, crates/openapi/src/openapi_v2.rs Included ConnectorIntegrationStatus enum in OpenAPI schema components for documentation.
api-reference/v1/openapi_spec_v1.json, api-reference/v2/openapi_spec_v2.json Added integration_status property to ConnectorFeatureMatrixResponse and defined ConnectorIntegrationStatus enum schema.
config/deployments/integration_test.toml, config/deployments/production.toml, config/deployments/sandbox.toml Expanded and standardized Stripe payment method filters to include detailed country and currency lists; added new payment methods.
config/development.toml, config/docker_compose.toml Restructured and expanded Stripe payment method filters with comprehensive country/currency support and new payment methods.

Sequence Diagram(s)

sequenceDiagram
    participant Client
    participant API
    participant Connectors

    Client->>API: Request Connector Feature Matrix
    API->>Connectors: Retrieve connector metadata
    Connectors-->>API: Return metadata (includes integration_status)
    API-->>Client: Respond with ConnectorFeatureMatrixResponse (integration_status included)
Loading
sequenceDiagram
    participant Developer
    participant OpenAPI Spec

    Developer->>OpenAPI Spec: Define/Update ConnectorIntegrationStatus enum
    OpenAPI Spec-->>Developer: Expose enum in API schema (integration_status property)
Loading

📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 251c240 and efc32ea.

📒 Files selected for processing (1)
  • crates/hyperswitch_connectors/src/connectors/stripe.rs (3 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • crates/hyperswitch_connectors/src/connectors/stripe.rs
⏰ Context from checks skipped due to timeout of 900000ms (6)
  • GitHub Check: Run Cypress tests
  • GitHub Check: Run tests on stable toolchain (ubuntu-latest)
  • GitHub Check: Check compilation for V2 features
  • GitHub Check: Check compilation on MSRV toolchain (ubuntu-latest)
  • GitHub Check: Validate generated OpenAPI spec file
  • GitHub Check: Check wasm build
✨ Finishing Touches
  • 📝 Generate Docstrings

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (13)
crates/router/src/routes/feature_matrix.rs (1)

104-104: Integration Status Mapping Added
Integration status is now correctly mapped from connector metadata into the response. Consider adding a unit test for build_connector_feature_details to verify integration_status is serialized as expected.

crates/hyperswitch_connectors/src/connectors/fiuu.rs (1)

1118-1118: Integration status added correctly to ConnectorInfo.
The new integration_status field is properly set to Alpha. For consistency with other connectors, consider importing use common_enums::enums; and using enums::ConnectorIntegrationStatus::Alpha.

crates/common_enums/src/enums.rs (2)

8248-8273: Missing EnumString derive for parsing
Most enums in this crate derive both strum::Display and strum::EnumString to allow round-trip conversion between strings and enum values. Consider adding strum::EnumString here so consumers can parse incoming strings into ConnectorIntegrationStatus if needed in the future.


8248-8273: Variant ordering suggestion
The variants are currently listed Live, Sandbox, Beta, Alpha. For clarity, you may want to reorder them in natural maturity order (Alpha, Beta, Sandbox, Live).

api-reference/v1/openapi_spec_v1.json (2)

10642-10651: ConnectorIntegrationStatus enum definition review
The enum schema is well-formed. For better logical flow in the documentation, consider listing the lifecycle stages in progression (alpha, beta, sandbox, live) instead of reverse order.

Suggested ordering:

 "enum": [
- "live",
- "sandbox",
- "beta",
- "alpha"
+ "alpha",
+ "beta",
+ "sandbox",
+ "live"
 ]

10617-10624: ```shell
#!/usr/bin/env bash

Show extended context to check for description and example in v2 spec

rg -n -F '"integration_status": {' -A10 -B2 api-reference/v2/openapi_spec_v2.json


</blockquote></details>
<details>
<summary>api-reference/v2/openapi_spec_v2.json (2)</summary><blockquote>

`8284-8291`: **Add description to `integration_status` property**  
To improve generated API docs, include a `description` for this field.  
  
```diff
           "integration_status": {
             "allOf": [
               {
                 "$ref": "#/components/schemas/ConnectorIntegrationStatus"
               }
             ],
-            "nullable": true
+            "description": "The current integration status of the connector (e.g., alpha, beta, sandbox, live).",
+            "nullable": true
           },

8309-8318: Reorder enum values for logical progression
List the statuses from least mature to most mature to reflect lifecycle stages.

         "enum": [
-          "live",
-          "sandbox",
-          "beta",
-          "alpha"
+          "alpha",
+          "beta",
+          "sandbox",
+          "live"
         ]
config/development.toml (1)

435-439: Normalize formatting for consistency
Some entries (sepa, bacs, becs, sofort, blik) lack spaces around braces and equals. Consider unifying style:

-[sepa = {country="AT,BE,...", currency="EUR"}]
+sepa = { country = "AT,BE,...", currency = "EUR" }
config/deployments/production.toml (3)

544-545: Ensure Stripe credit/debit pm_filters are accurate and maintainable.
The duplicated large country and currency lists may be hard to maintain. Consider reusing the default pm_filters or centralizing this list to avoid divergence across environments. Also verify that all listed regions and currencies are officially supported by Stripe.


548-548: Inconsistent formatting: add space after “{” in Apple Pay filter.
Align with other entries by inserting a space after the opening brace:

- apple_pay = {country = "...", currency = "..."}
+ apple_pay = { country = "...", currency = "..."}

552-552: Inconsistent formatting: add space after “{” in Google Pay filter.
For consistency, include a space after the brace:

- google_pay = {country = "...", currency = "..."}
+ google_pay = { country = "...", currency = "..."}
config/docker_compose.toml (1)

575-593: Refactor repeated Stripe payment method filters for maintainability
Individual payment‐method entries (eps through ali_pay) re-use large country/currency lists verbatim. This is error-prone and difficult to update. Extract shared lists into TOML arrays or leverage the default [pm_filters.default] to DRY up and reduce duplication.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1ed2f21 and 251c240.

📒 Files selected for processing (81)
  • api-reference/v1/openapi_spec_v1.json (2 hunks)
  • api-reference/v2/openapi_spec_v2.json (2 hunks)
  • config/deployments/integration_test.toml (1 hunks)
  • config/deployments/production.toml (1 hunks)
  • config/deployments/sandbox.toml (1 hunks)
  • config/development.toml (1 hunks)
  • config/docker_compose.toml (1 hunks)
  • crates/api_models/src/feature_matrix.rs (1 hunks)
  • crates/common_enums/src/enums.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/aci.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/adyen.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/airwallex.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/authorizedotnet.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/bambora.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/bamboraapac.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/barclaycard.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/billwerk.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/bitpay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/bluesnap.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/braintree.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/cashtocode.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/checkout.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/coinbase.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/coingate.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/deutschebank.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/digitalvirgo.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/dlocal.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/elavon.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/facilitapay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/fiserv.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/fiservemea.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/fiuu.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/forte.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/getnet.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/globalpay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/globepay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/gocardless.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/helcim.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/hipay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/iatapay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/inespay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/itaubank.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/jpmorgan.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/klarna.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/mifinity.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/mollie.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/moneris.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/multisafepay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/nexinets.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/nexixpay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/novalnet.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/nuvei.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/opennode.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/paybox.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/paystack.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/payu.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/placetopay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/powertranz.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/prophetpay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/rapyd.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/razorpay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/redsys.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/shift4.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/square.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/stax.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/stripe.rs (3 hunks)
  • crates/hyperswitch_connectors/src/connectors/tokenio.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/tsys.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/volt.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/wellsfargo.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/worldline.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/worldpay.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/worldpayvantiv.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/worldpayxml.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/xendit.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/zen.rs (1 hunks)
  • crates/hyperswitch_connectors/src/connectors/zsl.rs (1 hunks)
  • crates/hyperswitch_domain_models/src/router_response_types.rs (1 hunks)
  • crates/openapi/src/openapi.rs (1 hunks)
  • crates/openapi/src/openapi_v2.rs (1 hunks)
  • crates/router/src/routes/feature_matrix.rs (1 hunks)
🔇 Additional comments (91)
crates/openapi/src/openapi_v2.rs (1)

310-310: Document ConnectorIntegrationStatus in OpenAPI v2
The new enum is included in the component schemas, enabling documentation of the integration_status field.

crates/openapi/src/openapi.rs (1)

352-352: Document ConnectorIntegrationStatus in OpenAPI v1
Components now include the ConnectorIntegrationStatus enum, completing the API schema update.

crates/hyperswitch_connectors/src/connectors/billwerk.rs (1)

879-879: Set integration status to Alpha for Billwerk
The connector info struct now reflects the Alpha maturity level in its integration_status field.

crates/hyperswitch_connectors/src/connectors/novalnet.rs (1)

1091-1091: Integration status field correctly set.

New integration_status field is added and set to Alpha as intended, aligning with PR objectives to expose connector maturity.

crates/hyperswitch_connectors/src/connectors/deutschebank.rs (1)

1077-1077: Integration status field correctly set.

New integration_status field is added and set to Alpha, consistent with other connectors and PR objectives to surface connector maturity.

crates/hyperswitch_connectors/src/connectors/zen.rs (1)

869-869: Integration status field correctly set.

integration_status added with Alpha value, matching the enhancements to feature matrix response.

crates/hyperswitch_connectors/src/connectors/redsys.rs (1)

890-890: Integration status field correctly set.

The new integration_status: ConnectorIntegrationStatus::Alpha aligns with the PR intent and matches the struct format.

crates/hyperswitch_connectors/src/connectors/nuvei.rs (1)

1104-1104: Integration status field correctly set.

The integration_status: ConnectorIntegrationStatus::Alpha addition is consistent with other connectors and follows the established pattern.

crates/hyperswitch_connectors/src/connectors/paybox.rs (1)

763-763: Integration status field correctly set.

The integration_status: ConnectorIntegrationStatus::Alpha is inserted in the right place and conforms to the connector metadata structure.

crates/hyperswitch_connectors/src/connectors/stax.rs (1)

1005-1005: Add integration_status to ConnectorInfo
The new integration_status field set to Alpha is correctly added to the STAX connector metadata.

crates/hyperswitch_connectors/src/connectors/tsys.rs (1)

712-712: Add integration_status to ConnectorInfo
The integration_status field correctly reflects the Alpha status for the TSYS connector.

crates/hyperswitch_connectors/src/connectors/square.rs (1)

926-926: Add integration_status to ConnectorInfo
The integration_status field is correctly added with the Alpha value for the Square connector.

crates/hyperswitch_connectors/src/connectors/bitpay.rs (1)

450-450: Add integration_status to ConnectorInfo
The integration_status field is correctly added as Alpha for the BitPay connector.

crates/hyperswitch_connectors/src/connectors/elavon.rs (1)

661-667: Integration status correctly added to Elavon.
The ELAVON_CONNECTOR_INFO struct now includes integration_status: Alpha as intended.

crates/hyperswitch_connectors/src/connectors/helcim.rs (1)

904-907: Integration status correctly added to Helcim.
The HELCIM_CONNECTOR_INFO struct includes integration_status: Alpha properly.

crates/hyperswitch_connectors/src/connectors/razorpay.rs (1)

815-817: Integration status correctly added to Razorpay.
The RAZORPAY_CONNECTOR_INFO static now surfaces integration_status: Alpha as expected.

crates/hyperswitch_connectors/src/connectors/globalpay.rs (1)

1155-1155: Integration status property added correctly

The new integration_status field has been integrated into the ConnectorInfo struct for Globalpay, aligning with updated domain models and API schemas.

crates/hyperswitch_connectors/src/connectors/moneris.rs (1)

875-875: Integration status property added correctly

The integration_status: Alpha entry for Moneris aligns with the standardized ConnectorInfo schema update.

crates/hyperswitch_connectors/src/connectors/inespay.rs (1)

743-743: Integration status property added correctly

The integration_status: Alpha entry for Inespay follows the new ConnectorInfo schema and will be exposed in API responses.

crates/hyperswitch_connectors/src/connectors/worldpay.rs (1)

1341-1341: Integration status field added correctly
The new integration_status: ConnectorIntegrationStatus::Alpha is properly declared and aligns with the connector’s maturity metadata.

crates/hyperswitch_connectors/src/connectors/itaubank.rs (1)

821-821: Add integration_status to connector info
The integration_status: ConnectorIntegrationStatus::Alpha entry is correctly inserted. Confirm that this status is reflected in the feature matrix response and API docs.

crates/hyperswitch_connectors/src/connectors/placetopay.rs (1)

732-732: Set integration_status for PlacetoPay
The integration_status: ConnectorIntegrationStatus::Alpha field is correctly included. Ensure consistency with other connectors and the OpenAPI schema.

crates/hyperswitch_connectors/src/connectors/worldpayvantiv.rs (1)

791-793: Integration status added to connector info.
The integration_status field is correctly populated with ConnectorIntegrationStatus::Alpha in WORLDPAYVANTIV_CONNECTOR_INFO, making connector maturity explicit.

crates/hyperswitch_connectors/src/connectors/airwallex.rs (1)

1191-1192: Integration status added to connector info.
AIRWALLEX_CONNECTOR_INFO now includes integration_status: ConnectorIntegrationStatus::Alpha, aligning with the new schema.

crates/hyperswitch_connectors/src/connectors/fiservemea.rs (1)

855-856: Integration status added to connector info.
FISERVEMEA_CONNECTOR_INFO correctly defines integration_status: ConnectorIntegrationStatus::Alpha, enabling feature matrix integration status reporting.

crates/hyperswitch_connectors/src/connectors/hipay.rs (1)

821-821: Add integration_status to HIPAY_CONNECTOR_INFO
Good inclusion of the new integration_status field set to Alpha, reflecting the connector’s current maturity.

crates/hyperswitch_connectors/src/connectors/wellsfargo.rs (1)

1416-1416: Add integration_status to WELLSFARGO_CONNECTOR_INFO
The integration_status field has been correctly added and set to Alpha. Ensure this value aligns with internal documentation and API exposure.

crates/hyperswitch_connectors/src/connectors/mollie.rs (1)

801-801: Add integration_status to MOLLIE_CONNECTOR_INFO
Connector metadata now includes integration_status = Alpha. Confirm consistency with other connectors and API schemas.

crates/hyperswitch_connectors/src/connectors/payu.rs (1)

880-886: ConnectorInfo extended with integration_status
The new integration_status field is correctly added to PAYU_CONNECTOR_INFO using the ConnectorIntegrationStatus enum.

crates/hyperswitch_connectors/src/connectors/aci.rs (1)

754-756: ConnectorInfo extended with integration_status
The integration_status field is correctly added to ACI_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/digitalvirgo.rs (1)

558-559: ConnectorInfo extended with integration_status
The integration_status field is correctly added to DIGITALVIRGO_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/checkout.rs (1)

1556-1556: Integration status field added correctly.

The new integration_status: enums::ConnectorIntegrationStatus::Alpha entry aligns with the updated ConnectorInfo struct and fulfills the PR objective of exposing connector maturity.

crates/hyperswitch_connectors/src/connectors/worldline.rs (1)

912-912: Integration status field added correctly.

The Worldline connector now includes integration_status: enums::ConnectorIntegrationStatus::Alpha as intended, matching the new enum and feature-matrix enhancement.

crates/hyperswitch_connectors/src/connectors/barclaycard.rs (1)

1026-1027: Integration status added for Barclaycard connector

The integration_status: enums::ConnectorIntegrationStatus::Alpha field has been correctly added to BARCLAYCARD_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/bamboraapac.rs (1)

801-802: Integration status added for Bamboraapac connector

The integration_status: enums::ConnectorIntegrationStatus::Alpha field has been correctly added to BAMBORAAPAC_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/getnet.rs (1)

869-870: Integration status added for Getnet connector

The integration_status: enums::ConnectorIntegrationStatus::Alpha field has been correctly added to GETNET_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/opennode.rs (1)

471-472: Integration status added for Opennode connector

The integration_status: enums::ConnectorIntegrationStatus::Alpha field has been correctly added to OPENNODE_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/coingate.rs (1)

640-645: Integration status metadata added
The new integration_status field is correctly set to Alpha in COINGATE_CONNECTOR_INFO, aligning with the common enum.

crates/hyperswitch_connectors/src/connectors/mifinity.rs (1)

537-539: Integration status metadata added
The integration_status field has been properly introduced and set to Alpha in MIFINITY_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/nexinets.rs (1)

867-868: Integration status metadata added
The integration_status property is correctly included as Alpha in NEXINETS_CONNECTOR_INFO.

crates/hyperswitch_connectors/src/connectors/nexixpay.rs (1)

1083-1084: Integration status metadata added
The integration_status field is present and set to Alpha in NEXIXPAY_CONNECTOR_INFO as expected.

crates/hyperswitch_domain_models/src/router_response_types.rs (1)

590-591: Add integration_status field to ConnectorInfo
The new integration_status field is correctly defined in the ConnectorInfo struct.

crates/hyperswitch_connectors/src/connectors/klarna.rs (1)

1398-1400: Populate integration_status for Klarna connector
The integration_status is set to Alpha and aligns with the updated domain model.

crates/hyperswitch_connectors/src/connectors/xendit.rs (1)

1029-1029: Populate integration_status for Xendit connector
The integration_status is correctly set to Alpha and matches the new enum.

crates/hyperswitch_connectors/src/connectors/jpmorgan.rs (1)

890-892: Add integration_status to connector metadata
The new integration_status: Alpha entry correctly signals the JPMorgan connector’s maturity. Consider adding or extending a unit/integration test to assert this field appears in the feature matrix API response.

crates/hyperswitch_connectors/src/connectors/multisafepay.rs (1)

676-678: Add integration_status to connector metadata
Setting integration_status: Alpha aligns with the PR objective. Please verify that build_connector_feature_details in the router layer populates this field and add test coverage to confirm its presence in the API output.

crates/hyperswitch_connectors/src/connectors/powertranz.rs (1)

671-673: Add integration_status to connector metadata
The integration_status: Alpha line is consistent with other connectors. Ensure the OpenAPI documentation and schema components include this field and add a test to validate its serialization in the feature matrix endpoint.

crates/hyperswitch_connectors/src/connectors/prophetpay.rs (1)

748-750: Add integration_status to connector metadata
Using Alpha here matches the new enum. Verify that the API model (ConnectorFeatureMatrixResponse) and JSON schema reflect this addition, and include test assertions for the field in the feature matrix response.

crates/hyperswitch_connectors/src/connectors/bluesnap.rs (1)

1483-1485: Integration status field added correctly.

The integration_status property is properly introduced with Alpha for BlueSnap, aligning with the new ConnectorIntegrationStatus enum and ensuring this metadata flows through the feature matrix.

crates/hyperswitch_connectors/src/connectors/forte.rs (1)

785-787: Integration status field added correctly.

The integration_status property is properly introduced with Alpha for Forte, consistent with other connectors and the updated ConnectorIntegrationStatus enum.

crates/hyperswitch_connectors/src/connectors/braintree.rs (1)

1311-1311: Integration status added correctly to ConnectorInfo.
The new integration_status field with Alpha is properly included in the connector metadata.

crates/hyperswitch_connectors/src/connectors/globepay.rs (1)

605-605: Integration status added correctly to ConnectorInfo.
The new integration_status field with Alpha is properly included in the connector metadata.

crates/hyperswitch_connectors/src/connectors/cashtocode.rs (1)

487-493: ConnectorInfo updated with integration_status
The integration_status field is correctly added as Alpha, reflecting the connector’s development stage.

crates/hyperswitch_connectors/src/connectors/dlocal.rs (1)

745-751: ConnectorInfo updated with integration_status
The integration_status field is correctly set to Alpha, aligning with the connector’s current maturity.

crates/hyperswitch_connectors/src/connectors/shift4.rs (1)

949-955: ConnectorInfo updated with integration_status
The integration_status field is properly introduced as Alpha, matching the intended connector lifecycle.

crates/hyperswitch_connectors/src/connectors/volt.rs (1)

764-770: ConnectorInfo updated with integration_status
The integration_status entry for Volt is correctly added as Alpha, consistent with other connectors.

crates/hyperswitch_connectors/src/connectors/paystack.rs (1)

687-687: Integration status addition is correct

The integration_status: ConnectorIntegrationStatus::Alpha field has been correctly added to the Paystack connector metadata.

crates/hyperswitch_connectors/src/connectors/gocardless.rs (1)

914-914: Integration status addition is correct

The integration_status: ConnectorIntegrationStatus::Alpha field has been correctly added to the GoCardless connector metadata.

crates/hyperswitch_connectors/src/connectors/rapyd.rs (1)

1040-1040: Integration status addition is correct

The integration_status: ConnectorIntegrationStatus::Alpha field has been correctly added to the Rapyd connector metadata.

crates/hyperswitch_connectors/src/connectors/fiserv.rs (1)

979-979: Add integration_status to connector metadata
The FISERV_CONNECTOR_INFO now includes the new integration_status field set to Alpha, matching the updated enum and API schema.

crates/hyperswitch_connectors/src/connectors/worldpayxml.rs (1)

825-825: Add integration_status to connector metadata
The WORLDPAYXML_CONNECTOR_INFO now includes the new integration_status field set to Alpha, aligning with the domain and API model changes.

crates/hyperswitch_connectors/src/connectors/facilitapay.rs (1)

775-775: Add integration_status to connector metadata
The FACILITAPAY_CONNECTOR_INFO now includes the new integration_status field set to Alpha, reflecting its integration maturity in the feature matrix.

crates/hyperswitch_connectors/src/connectors/tokenio.rs (1)

774-774: Add integration_status to connector metadata
The TOKENIO_CONNECTOR_INFO now includes the new integration_status field set to Alpha, consistent with the new enum and API schema updates.

crates/api_models/src/feature_matrix.rs (1)

74-76: Add integration_status to ConnectorFeatureMatrixResponse
The new integration_status field is correctly declared as an optional enum with schema metadata and example. This aligns with the OpenAPI spec and enables reporting connector maturity.

crates/hyperswitch_connectors/src/connectors/adyen.rs (1)

3022-3024: Include integration_status in ADYEN_CONNECTOR_INFO
The static ADYEN_CONNECTOR_INFO now properly sets integration_status to Live. This matches the updated ConnectorInfo struct and maintains consistency with other connector definitions.

crates/hyperswitch_connectors/src/connectors/iatapay.rs (1)

766-766: Add integration_status to connector metadata
The new integration_status: enums::ConnectorIntegrationStatus::Alpha entry properly marks the Iatapay connector as alpha and aligns with the updated ConnectorInfo schema.

crates/hyperswitch_connectors/src/connectors/authorizedotnet.rs (1)

1141-1141: Add integration_status to connector metadata
The integration_status: enums::ConnectorIntegrationStatus::Alpha field is correctly added to Authorize.net’s ConnectorInfo, matching the PR’s objective of exposing connector maturity.

crates/hyperswitch_connectors/src/connectors/coinbase.rs (1)

444-444: Add integration_status to connector metadata
The integration status for the Coinbase connector is accurately set to Alpha, consistent with the new enum and other connectors.

crates/hyperswitch_connectors/src/connectors/zsl.rs (1)

476-476: Add integration_status to connector metadata
The ZSL connector’s integration_status: enums::ConnectorIntegrationStatus::Alpha is properly defined and in line with the update across all connectors.

crates/hyperswitch_connectors/src/connectors/bambora.rs (1)

867-867: Integration status added as expected.

The new integration_status field is correctly set to ConnectorIntegrationStatus::Alpha on the BAMBORA_CONNECTOR_INFO static, matching the updated ConnectorInfo definition.

config/deployments/sandbox.toml (4)

552-553: Stripe credit & debit filters expanded
The global coverage lists for credit and debit now include a comprehensive set of country codes as intended. Ensure there are no duplicates and that this list matches Stripe’s actual supported countries in sandbox.


556-556: Review Stripe apple_pay filter list
The apple_pay country and currency list has been widened significantly. Confirm these entries align with Stripe’s sandbox support matrix.


560-560: Review Stripe google_pay filter list
The google_pay filters are updated with a broad set. Verify that the included countries and currencies match Stripe’s documented capabilities.


563-576: New Stripe payment method filters added
Multiple new payment methods (multibanco, sepa, bacs, becs, sofort, blik, bancontact_card, przelewy24, online_banking_fpx, amazon_pay, we_chat_pay, ali_pay) are introduced. Please validate each against Stripe’s official docs for correct country & currency coverage.

config/development.toml (5)

421-422: Stripe credit/debit filters: comprehensive global support
The updated credit and debit entries now include full country and currency scopes matching Stripe’s global footprint.


425-429: Expand region support for core payment methods
The new apple_pay, cashapp, giropay, and google_pay entries correctly reflect Stripe’s multi-region, multi-currency capabilities.


431-432: Add Klarna and Multibanco support
The integration of klarna and multibanco with accurate country and currency lists aligns with official Stripe docs.


440-442: Include additional bank transfer methods
The bancontact_card, przelewy24, and online_banking_fpx filters are correctly added for Stripe.


443-446: Introduced alternative payment methods
Entries for amazon_pay, we_chat_pay, and ali_pay are accurate and complete.

config/deployments/production.toml (4)

558-561: Verify SEPA, BACS, BECS, and Sofort support regions.
Cross-check that Stripe supports:

  • SEPA across the specified Eurozone countries.
  • BACS in the UK only.
  • BECS in Australia only.
  • Sofort in the listed European markets.
    Adjust country lists to match Stripe’s official coverage.

562-565: Confirm Blik, Bancontact, Przelewy24 & FPX support.
These local methods were added under Stripe. Verify Stripe’s API support for:

  • BLIK (Poland)
  • Bancontact (Belgium)
  • Przelewy24 (Poland)
  • Online Banking FPX (Malaysia)
    Ensure the country/currency filters align with Stripe’s documentation.

566-568: Validate Amazon Pay, WeChat Pay & Alipay filters.
Stripe offers these alternative payment methods only in select markets. Please confirm the exact supported country and currency combinations for:

  • Amazon Pay
  • WeChat Pay
  • Alipay
    and update the filters based on Stripe’s official docs.

555-555: [web_search]

Which countries are supported by Stripe for Multibanco payments?
config/docker_compose.toml (1)

569-573: Ensure Stripe supported credit/debit lists are accurate and maintainable
These filters hard-code an extensive list of ISO country codes and currencies. Please verify these against Stripe’s latest published support matrix to avoid drift. Consider automating list retrieval or centralizing the common lists to simplify future updates.

config/deployments/integration_test.toml (6)

450-450: Validate updated Apple Pay filter under Stripe
The new apple_pay country/currency set is extensive—ensure it aligns with the connector’s static metadata and your Cypress tests.


454-454: Review Google Pay filter adjustments for Stripe
Double-check that the google_pay list here correctly reflects all supported regions and currencies per Stripe’s documentation.


457-457: Confirm addition of Multibanco to Stripe filters
The multibanco entry is new; please ensure it’s also present and tested in the feature matrix response and matches production settings.


459-459: Verify Revolut Pay support for Stripe
revolut_pay has been added without country scope—confirm Stripe actually supports this payment method in Europe and document it accordingly.


460-470: Check all new Stripe PM filters for consistency
The block (sepa, bacs, becs, sofort, blik, bancontact_card, przelewy24, online_banking_fpx, amazon_pay, we_chat_pay, ali_pay) was expanded. Confirm each key is supported by Stripe’s API and that these entries match those in your connector’s static metadata and other environment configs.

You can extract and compare the entire Stripe section with:

rg -A15 '\[pm_filters.stripe\]' config/deployments/*.toml

446-447: Here’s a more reliable way to pull out the Stripe credit/debit filters from every deployment config so you can do a side-by-side comparison:

#!/usr/bin/env bash
echo "Comparing Stripe credit/debit filters across all deployment configs"
for f in config/deployments/*.toml; do
  echo -e "\n=== $f ==="
  # Print lines from [pm_filters.stripe] until the next table header, then filter for credit/debit
  sed -n '/\[pm_filters\.stripe\]/,/\[/p' "$f" \
    | grep -E '^(credit|debit) =' \
    || echo "  (no credit/debit filters found)"
done
crates/hyperswitch_connectors/src/connectors/stripe.rs (1)

3171-3183: Well-structured ConnectorSpecifications implementation!

The trait implementation properly returns references to the static configuration data, providing comprehensive connector metadata including supported payment methods, webhook flows, and general connector information.

@AkshayaFoiger
Copy link
Contributor Author

@coderabbitai review

@coderabbitai
Copy link

coderabbitai bot commented Jun 17, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

common_enums::PaymentMethod::Card,
PaymentMethodType::Credit,
PaymentMethodDetails {
mandates: common_enums::FeatureStatus::NotSupported,
Copy link
Contributor

Choose a reason for hiding this comment

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

We support mandates in stripe ?

Copy link
Contributor Author

@AkshayaFoiger AkshayaFoiger Jun 19, 2025

Choose a reason for hiding this comment

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

Yes, we support mandates in stripe. I will update it

api_models::feature_matrix::PaymentMethodSpecificFeatures::Card(
api_models::feature_matrix::CardSpecificFeatures {
three_ds: common_enums::FeatureStatus::Supported,
no_three_ds: common_enums::FeatureStatus::NotSupported,
Copy link
Contributor

Choose a reason for hiding this comment

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

We support non 3ds transactions as well

Copy link
Contributor

Choose a reason for hiding this comment

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

Same for debit cards

@deepanshu-iiitu deepanshu-iiitu requested review from jagan-jaya and removed request for jagan-jaya June 20, 2025 08:01
jarnura
jarnura previously approved these changes Jun 23, 2025
@likhinbopanna likhinbopanna added this pull request to the merge queue Jul 1, 2025
Gnanasundari24
Gnanasundari24 previously approved these changes Aug 12, 2025
@Gnanasundari24 Gnanasundari24 added this pull request to the merge queue Aug 12, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Aug 12, 2025
@likhinbopanna likhinbopanna added this pull request to the merge queue Aug 13, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Aug 13, 2025
jarnura
jarnura previously approved these changes Aug 20, 2025
Gnanasundari24
Gnanasundari24 previously approved these changes Aug 21, 2025
@Gnanasundari24 Gnanasundari24 added this pull request to the merge queue Aug 21, 2025
Merged via the queue into main with commit 6d984d4 Aug 21, 2025
20 of 25 checks passed
@Gnanasundari24 Gnanasundari24 deleted the feature-matrix-stripe branch August 21, 2025 14:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-connector-integration Area: Connector integration M-api-contract-changes Metadata: This PR involves API contract changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants