hyperswitch icon indicating copy to clipboard operation
hyperswitch copied to clipboard

feat(connector): [NOON, PAYME, PAYSTACK] Added Feature Matrix Support

Open Debarshi-Gupta opened this issue 7 months ago • 1 comments

Type of Change

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

Description

Added Feature Matrix supported payment methods, countries and currencies for Noon, Payme and Paystack.

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?

Postman Test

-Request

curl --location --request GET 'http://localhost:8080/feature_matrix' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_kl7vP0fysoyX8f1O7wZiJae7n1XS5zhEJbe2zK4rtuDNCg4JMSsWhSc0GNkNKWwC' \
--header 'X-Merchant-Id: merchant_1738299466' \
--data '{    
}'

-Response

{
    "connector_count": 56,
    "connectors": [
        ...
        {
            "name": "NOON",
            "display_name": "Noon",
            "description": "Noon is a payment gateway and PSP enabling secure online transactions",
            "category": "payment_gateway",
            "supported_payment_methods": [
                {
                    "payment_method": "wallet",
                    "payment_method_type": "paypal",
                    "payment_method_type_display_name": "PayPal",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "supported_countries": [
                        "KWT",
                        "SAU",
                        "QAT",
                        "EGY",
                        "JOR",
                        "BHR",
                        "ARE",
                        "OMN",
                        "LBN"
                    ],
                    "supported_currencies": [
                        "USD",
                        "KPW",
                        "CAD",
                        "RON",
                        "UYU",
                        "BHD",
                        "XCD",
                        "MYR",
                        "XAF",
                        "LSL",
                        "XPF",
                        "SLE",
                        "SDG",
                        "CHF",
                        "PHP",
                        "GEL",
                        "STN",
                        "SVC",
                        "LYD",
                        "PKR",
                        "NGN",
                        "SSP",
                        "SZL",
                        "ZMW",
                        "LBP",
                        "TMT",
                        "JMD",
                        "KZT",
                        "VUV",
                        "GMD",
                        "AUD",
                        "CRC",
                        "NZD",
                        "BBD",
                        "QAR",
                        "RSD",
                        "KMF",
                        "CLP",
                        "HNL",
                        "IRR",
                        "KRW",
                        "TRY",
                        "BWP",
                        "VND",
                        "EUR",
                        "CVE",
                        "BDT",
                        "AFN",
                        "HUF",
                        "ISK",
                        "LAK",
                        "MVR",
                        "CUP",
                        "HRK",
                        "SCR",
                        "AOA",
                        "BOB",
                        "KHR",
                        "TND",
                        "MRU",
                        "SOS",
                        "BIF",
                        "THB",
                        "MGA",
                        "NAD",
                        "SYP",
                        "EGP",
                        "MMK",
                        "DKK",
                        "DOP",
                        "AED",
                        "PYG",
                        "MXN",
                        "RWF",
                        "ARS",
                        "NPR",
                        "CUC",
                        "LRD",
                        "GNF",
                        "LKR",
                        "UGX",
                        "IQD",
                        "NOK",
                        "SBD",
                        "KGS",
                        "AMD",
                        "JPY",
                        "MNT",
                        "GIP",
                        "SAR",
                        "SHP",
                        "TZS",
                        "BRL",
                        "DZD",
                        "CZK",
                        "KWD",
                        "SRD",
                        "TOP",
                        "MOP",
                        "BAM",
                        "BZD",
                        "FKP",
                        "CDF",
                        "MUR",
                        "OMR",
                        "STD",
                        "TJS",
                        "ZWL",
                        "TTD",
                        "AZN",
                        "ERN",
                        "BND",
                        "HTG",
                        "NIO",
                        "HKD",
                        "INR",
                        "CNY",
                        "JOD",
                        "MAD",
                        "ETB",
                        "BGN",
                        "UAH",
                        "GTQ",
                        "BSD",
                        "VES",
                        "GBP",
                        "PAB",
                        "CLF",
                        "SLL",
                        "KYD",
                        "MZN",
                        "BMD",
                        "PLN",
                        "PGK",
                        "TWD",
                        "XOF",
                        "SEK",
                        "AWG",
                        "COP",
                        "GHS",
                        "ANG",
                        "MDL",
                        "RUB",
                        "BYN",
                        "IDR",
                        "PEN",
                        "GYD",
                        "FJD",
                        "ILS",
                        "MWK",
                        "UZS",
                        "BTN",
                        "DJF",
                        "KES",
                        "ALL",
                        "MKD",
                        "WST",
                        "SGD",
                        "ZAR",
                        "YER"
                    ]
                },
                {
                    "payment_method": "wallet",
                    "payment_method_type": "google_pay",
                    "payment_method_type_display_name": "Google Pay",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "supported_countries": [
                        "KWT",
                        "SAU",
                        "ARE",
                        "OMN",
                        "EGY",
                        "QAT",
                        "JOR",
                        "BHR",
                        "LBN"
                    ],
                    "supported_currencies": [
                        "BMD",
                        "KGS",
                        "NGN",
                        "TOP",
                        "SVC",
                        "UGX",
                        "USD",
                        "HUF",
                        "BTN",
                        "MNT",
                        "ERN",
                        "CHF",
                        "KHR",
                        "PEN",
                        "GBP",
                        "SEK",
                        "RSD",
                        "MAD",
                        "MXN",
                        "CVE",
                        "AWG",
                        "NAD",
                        "HRK",
                        "BAM",
                        "KMF",
                        "NOK",
                        "IDR",
                        "OMR",
                        "BGN",
                        "ANG",
                        "CNY",
                        "PAB",
                        "MDL",
                        "PHP",
                        "FJD",
                        "SDG",
                        "HKD",
                        "STD",
                        "GEL",
                        "TMT",
                        "TWD",
                        "ARS",
                        "SLL",
                        "ZMW",
                        "AED",
                        "RUB",
                        "MOP",
                        "PYG",
                        "KZT",
                        "NZD",
                        "SLE",
                        "GHS",
                        "PGK",
                        "AFN",
                        "GTQ",
                        "NIO",
                        "SSP",
                        "DOP",
                        "BWP",
                        "LAK",
                        "INR",
                        "IRR",
                        "ZWL",
                        "JOD",
                        "SBD",
                        "ALL",
                        "LBP",
                        "SCR",
                        "TND",
                        "JPY",
                        "MGA",
                        "CZK",
                        "GMD",
                        "GNF",
                        "HNL",
                        "RON",
                        "VES",
                        "KWD",
                        "KRW",
                        "EGP",
                        "BDT",
                        "CDF",
                        "BYN",
                        "BRL",
                        "CAD",
                        "JMD",
                        "LRD",
                        "AUD",
                        "THB",
                        "HTG",
                        "TRY",
                        "ZAR",
                        "BZD",
                        "DZD",
                        "TJS",
                        "STN",
                        "BND",
                        "BHD",
                        "DJF",
                        "LSL",
                        "MZN",
                        "QAR",
                        "UAH",
                        "XOF",
                        "GYD",
                        "VND",
                        "AMD",
                        "IQD",
                        "SRD",
                        "SYP",
                        "WST",
                        "MYR",
                        "CRC",
                        "SGD",
                        "KYD",
                        "BBD",
                        "SHP",
                        "SOS",
                        "TTD",
                        "MRU",
                        "XPF",
                        "XCD",
                        "TZS",
                        "LYD",
                        "GIP",
                        "KES",
                        "LKR",
                        "CLF",
                        "ETB",
                        "MMK",
                        "FKP",
                        "ILS",
                        "CUC",
                        "SZL",
                        "RWF",
                        "KPW",
                        "BOB",
                        "COP",
                        "MUR",
                        "MWK",
                        "PKR",
                        "PLN",
                        "SAR",
                        "AZN",
                        "YER",
                        "DKK",
                        "EUR",
                        "CLP",
                        "MVR",
                        "AOA",
                        "NPR",
                        "VUV",
                        "BIF",
                        "BSD",
                        "XAF",
                        "CUP",
                        "UZS",
                        "ISK",
                        "UYU",
                        "MKD"
                    ]
                },
                {
                    "payment_method": "wallet",
                    "payment_method_type": "apple_pay",
                    "payment_method_type_display_name": "Apple Pay",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "supported_countries": [
                        "KWT",
                        "JOR",
                        "LBN",
                        "ARE",
                        "SAU",
                        "EGY",
                        "OMN",
                        "BHR",
                        "QAT"
                    ],
                    "supported_currencies": [
                        "TND",
                        "GMD",
                        "MWK",
                        "TWD",
                        "CLF",
                        "SVC",
                        "NIO",
                        "TRY",
                        "NOK",
                        "BDT",
                        "BWP",
                        "TMT",
                        "QAR",
                        "UAH",
                        "RSD",
                        "BTN",
                        "INR",
                        "NPR",
                        "VUV",
                        "ZAR",
                        "PLN",
                        "XPF",
                        "BIF",
                        "FKP",
                        "WST",
                        "MKD",
                        "DOP",
                        "MVR",
                        "SDG",
                        "SEK",
                        "GNF",
                        "JMD",
                        "LAK",
                        "KHR",
                        "MRU",
                        "BMD",
                        "HNL",
                        "HTG",
                        "NZD",
                        "PEN",
                        "SYP",
                        "COP",
                        "USD",
                        "BGN",
                        "HKD",
                        "PKR",
                        "KYD",
                        "KZT",
                        "ZWL",
                        "UGX",
                        "UYU",
                        "CZK",
                        "DZD",
                        "BBD",
                        "BSD",
                        "CVE",
                        "GTQ",
                        "KPW",
                        "OMR",
                        "GBP",
                        "EUR",
                        "DJF",
                        "AFN",
                        "MZN",
                        "BZD",
                        "ZMW",
                        "MYR",
                        "RWF",
                        "SLE",
                        "KES",
                        "AED",
                        "HRK",
                        "AZN",
                        "PYG",
                        "AMD",
                        "BND",
                        "IDR",
                        "LBP",
                        "CLP",
                        "MUR",
                        "MDL",
                        "PHP",
                        "LYD",
                        "SSP",
                        "MXN",
                        "BOB",
                        "VES",
                        "KRW",
                        "MGA",
                        "KGS",
                        "KWD",
                        "MNT",
                        "BRL",
                        "GHS",
                        "HUF",
                        "JOD",
                        "ISK",
                        "UZS",
                        "AOA",
                        "NAD",
                        "EGP",
                        "AUD",
                        "ANG",
                        "SHP",
                        "CRC",
                        "ILS",
                        "ALL",
                        "CUP",
                        "IRR",
                        "BYN",
                        "GEL",
                        "GIP",
                        "VND",
                        "CAD",
                        "IQD",
                        "SZL",
                        "YER",
                        "LSL",
                        "SGD",
                        "TOP",
                        "CHF",
                        "TJS",
                        "GYD",
                        "BHD",
                        "THB",
                        "NGN",
                        "PGK",
                        "SCR",
                        "SOS",
                        "STN",
                        "TZS",
                        "MOP",
                        "STD",
                        "XOF",
                        "XCD",
                        "KMF",
                        "PAB",
                        "CUC",
                        "CDF",
                        "TTD",
                        "SBD",
                        "AWG",
                        "XAF",
                        "LKR",
                        "MMK",
                        "JPY",
                        "ARS",
                        "SLL",
                        "SRD",
                        "ETB",
                        "BAM",
                        "DKK",
                        "MAD",
                        "LRD",
                        "ERN",
                        "RON",
                        "FJD",
                        "CNY",
                        "RUB",
                        "SAR"
                    ]
                },
                {
                    "payment_method": "card",
                    "payment_method_type": "debit",
                    "payment_method_type_display_name": "Debit Card",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "three_ds": "supported",
                    "no_three_ds": "supported",
                    "supported_card_networks": [
                        "AmericanExpress",
                        "JCB",
                        "Mastercard",
                        "Visa"
                    ],
                    "supported_countries": [
                        "LBN",
                        "QAT",
                        "SAU",
                        "JOR",
                        "KWT",
                        "BHR",
                        "EGY",
                        "OMN",
                        "ARE"
                    ],
                    "supported_currencies": [
                        "USD",
                        "HUF",
                        "MVR",
                        "AWG",
                        "BZD",
                        "LYD",
                        "QAR",
                        "MUR",
                        "VES",
                        "GBP",
                        "MZN",
                        "NPR",
                        "SZL",
                        "HTG",
                        "BSD",
                        "SLE",
                        "YER",
                        "SYP",
                        "SCR",
                        "CAD",
                        "LBP",
                        "MYR",
                        "BYN",
                        "LSL",
                        "MKD",
                        "HNL",
                        "GIP",
                        "PHP",
                        "MWK",
                        "RUB",
                        "FJD",
                        "SVC",
                        "BOB",
                        "CLP",
                        "MNT",
                        "CUP",
                        "LRD",
                        "KMF",
                        "RON",
                        "SEK",
                        "SDG",
                        "TJS",
                        "UAH",
                        "ANG",
                        "CZK",
                        "BBD",
                        "JMD",
                        "SBD",
                        "UYU",
                        "JOD",
                        "SSP",
                        "XAF",
                        "TND",
                        "BDT",
                        "VUV",
                        "XPF",
                        "MAD",
                        "NAD",
                        "THB",
                        "ZWL",
                        "UZS",
                        "CUC",
                        "CVE",
                        "IDR",
                        "SAR",
                        "STD",
                        "KPW",
                        "AUD",
                        "SGD",
                        "TRY",
                        "BRL",
                        "HKD",
                        "RSD",
                        "RWF",
                        "KZT",
                        "MMK",
                        "EUR",
                        "INR",
                        "PGK",
                        "DKK",
                        "KWD",
                        "CLF",
                        "ETB",
                        "PEN",
                        "EGP",
                        "STN",
                        "KYD",
                        "PLN",
                        "BMD",
                        "IQD",
                        "BIF",
                        "KES",
                        "CDF",
                        "FKP",
                        "BHD",
                        "AZN",
                        "CNY",
                        "ISK",
                        "MRU",
                        "ALL",
                        "BWP",
                        "ARS",
                        "SHP",
                        "AFN",
                        "SLL",
                        "GTQ",
                        "UGX",
                        "ZMW",
                        "TZS",
                        "NZD",
                        "PYG",
                        "COP",
                        "VND",
                        "DZD",
                        "AOA",
                        "AED",
                        "XCD",
                        "TMT",
                        "ZAR",
                        "SOS",
                        "HRK",
                        "BND",
                        "CRC",
                        "TWD",
                        "BAM",
                        "KHR",
                        "NOK",
                        "MDL",
                        "OMR",
                        "ILS",
                        "MXN",
                        "PKR",
                        "GYD",
                        "PAB",
                        "GEL",
                        "MOP",
                        "ERN",
                        "LKR",
                        "CHF",
                        "BTN",
                        "DOP",
                        "IRR",
                        "JPY",
                        "NIO",
                        "XOF",
                        "TTD",
                        "LAK",
                        "GMD",
                        "NGN",
                        "DJF",
                        "KGS",
                        "GHS",
                        "KRW",
                        "SRD",
                        "BGN",
                        "GNF",
                        "AMD",
                        "TOP",
                        "MGA",
                        "WST"
                    ]
                },
                {
                    "payment_method": "card",
                    "payment_method_type": "credit",
                    "payment_method_type_display_name": "Credit Card",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "three_ds": "supported",
                    "no_three_ds": "supported",
                    "supported_card_networks": [
                        "AmericanExpress",
                        "JCB",
                        "Mastercard",
                        "Visa"
                    ],
                    "supported_countries": [
                        "ARE",
                        "OMN",
                        "BHR",
                        "EGY",
                        "SAU",
                        "KWT",
                        "JOR",
                        "LBN",
                        "QAT"
                    ],
                    "supported_currencies": [
                        "TOP",
                        "LRD",
                        "CRC",
                        "LAK",
                        "RSD",
                        "TMT",
                        "CLP",
                        "KPW",
                        "BND",
                        "KES",
                        "WST",
                        "CLF",
                        "TTD",
                        "DOP",
                        "ETB",
                        "EUR",
                        "KMF",
                        "KGS",
                        "HKD",
                        "AWG",
                        "PGK",
                        "XPF",
                        "XOF",
                        "UYU",
                        "DZD",
                        "ALL",
                        "MDL",
                        "SHP",
                        "GHS",
                        "GBP",
                        "SCR",
                        "BMD",
                        "TZS",
                        "MGA",
                        "THB",
                        "KZT",
                        "NAD",
                        "PEN",
                        "CVE",
                        "NPR",
                        "GNF",
                        "ARS",
                        "CAD",
                        "MMK",
                        "GEL",
                        "JOD",
                        "RON",
                        "NIO",
                        "DKK",
                        "CDF",
                        "CUP",
                        "ANG",
                        "BZD",
                        "CZK",
                        "EGP",
                        "BHD",
                        "GIP",
                        "HRK",
                        "ISK",
                        "KHR",
                        "KWD",
                        "GYD",
                        "IQD",
                        "LKR",
                        "MRU",
                        "MXN",
                        "SSP",
                        "HTG",
                        "INR",
                        "XCD",
                        "KYD",
                        "SGD",
                        "MAD",
                        "MUR",
                        "SYP",
                        "TJS",
                        "STN",
                        "COP",
                        "VUV",
                        "FJD",
                        "KRW",
                        "MKD",
                        "BSD",
                        "TWD",
                        "RUB",
                        "NGN",
                        "JMD",
                        "OMR",
                        "BBD",
                        "BDT",
                        "AOA",
                        "BTN",
                        "FKP",
                        "PHP",
                        "QAR",
                        "SBD",
                        "ZMW",
                        "BWP",
                        "BRL",
                        "RWF",
                        "BYN",
                        "JPY",
                        "CNY",
                        "CHF",
                        "SEK",
                        "SLE",
                        "BGN",
                        "AMD",
                        "BOB",
                        "LYD",
                        "MOP",
                        "UZS",
                        "USD",
                        "AUD",
                        "DJF",
                        "MNT",
                        "MZN",
                        "ERN",
                        "IDR",
                        "AFN",
                        "AZN",
                        "PLN",
                        "NZD",
                        "SDG",
                        "STD",
                        "NOK",
                        "UGX",
                        "MYR",
                        "ZWL",
                        "YER",
                        "ILS",
                        "MWK",
                        "TRY",
                        "SZL",
                        "AED",
                        "SAR",
                        "SVC",
                        "SOS",
                        "TND",
                        "UAH",
                        "PKR",
                        "CUC",
                        "GTQ",
                        "VES",
                        "XAF",
                        "GMD",
                        "MVR",
                        "LBP",
                        "SRD",
                        "LSL",
                        "ZAR",
                        "PYG",
                        "BIF",
                        "BAM",
                        "HUF",
                        "IRR",
                        "SLL",
                        "VND",
                        "PAB",
                        "HNL"
                    ]
                }
            ],
            "supported_webhook_flows": [
                "payments"
            ]
        },
        {
            "name": "PAYME",
            "display_name": "Payme",
            "description": "Payme is a payment gateway enabling secure online transactions",
            "category": "payment_gateway",
            "supported_payment_methods": [
                {
                    "payment_method": "card",
                    "payment_method_type": "debit",
                    "payment_method_type_display_name": "Debit Card",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "three_ds": "supported",
                    "no_three_ds": "supported",
                    "supported_card_networks": [
                        "AmericanExpress",
                        "DinersClub",
                        "Discover",
                        "JCB",
                        "Mastercard",
                        "Visa"
                    ],
                    "supported_countries": [
                        "GBR",
                        "USA",
                        "CAN",
                        "ISR"
                    ],
                    "supported_currencies": [
                        "ILS",
                        "USD",
                        "EUR"
                    ]
                },
                {
                    "payment_method": "card",
                    "payment_method_type": "credit",
                    "payment_method_type_display_name": "Credit Card",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "three_ds": "supported",
                    "no_three_ds": "supported",
                    "supported_card_networks": [
                        "AmericanExpress",
                        "DinersClub",
                        "Discover",
                        "JCB",
                        "Mastercard",
                        "Visa"
                    ],
                    "supported_countries": [
                        "CAN",
                        "GBR",
                        "ISR",
                        "USA"
                    ],
                    "supported_currencies": [
                        "USD",
                        "ILS",
                        "EUR"
                    ]
                },
                {
                    "payment_method": "wallet",
                    "payment_method_type": "apple_pay",
                    "payment_method_type_display_name": "Apple Pay",
                    "mandates": "supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic",
                        "manual",
                        "sequential_automatic"
                    ],
                    "supported_countries": [
                        "CAN",
                        "GBR",
                        "USA",
                        "ISR"
                    ],
                    "supported_currencies": [
                        "ILS",
                        "USD",
                        "EUR"
                    ]
                }
            ],
            "supported_webhook_flows": [
                "payments",
                "refunds",
                "disputes"
            ]
        },
        {
            "name": "PAYSTACK",
            "display_name": "Paystack",
            "description": "Paystack is a payment gateway enabling secure online transactions in Africa",
            "category": "payment_gateway",
            "supported_payment_methods": [
                {
                    "payment_method": "bank_redirect",
                    "payment_method_type": "eft",
                    "payment_method_type_display_name": "EFT",
                    "mandates": "not_supported",
                    "refunds": "supported",
                    "supported_capture_methods": [
                        "automatic"
                    ],
                    "supported_countries": [
                        "CIV",
                        "GHA",
                        "ZAF",
                        "KEN",
                        "NGA"
                    ],
                    "supported_currencies": [
                        "NGN",
                        "ZAR",
                        "KES",
                        "XOF",
                        "GHS",
                        "USD"
                    ]
                }
            ],
            "supported_webhook_flows": [
                "payments",
                "refunds"
            ]
        },
        ...

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

Debarshi-Gupta avatar May 11 '25 18:05 Debarshi-Gupta

Review changes with  SemanticDiff

Changed Files
File Status
  crates/hyperswitch_connectors/src/connectors/payme.rs  7% smaller
  crates/hyperswitch_connectors/src/connectors/noon.rs  6% 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
  crates/hyperswitch_connectors/src/connectors/multisafepay.rs  0% smaller

semanticdiff-com[bot] avatar May 11 '25 18:05 semanticdiff-com[bot]

Closing this PR because of similar PR

Debarshi-Gupta avatar Aug 04 '25 09:08 Debarshi-Gupta