mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-11-01 11:06:50 +08:00
feat(router): add payment method display name to feature matrix response (#7639)
Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
This commit is contained in:
@ -7874,14 +7874,17 @@
|
|||||||
],
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"name": {
|
"name": {
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"description": "The name of the connector"
|
||||||
},
|
},
|
||||||
"display_name": {
|
"display_name": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"description": "The display name of the connector",
|
||||||
"nullable": true
|
"nullable": true
|
||||||
},
|
},
|
||||||
"description": {
|
"description": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"description": "The description of the connector",
|
||||||
"nullable": true
|
"nullable": true
|
||||||
},
|
},
|
||||||
"category": {
|
"category": {
|
||||||
@ -7896,13 +7899,15 @@
|
|||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/SupportedPaymentMethod"
|
"$ref": "#/components/schemas/SupportedPaymentMethod"
|
||||||
}
|
},
|
||||||
|
"description": "The list of payment methods supported by the connector"
|
||||||
},
|
},
|
||||||
"supported_webhook_flows": {
|
"supported_webhook_flows": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/EventClass"
|
"$ref": "#/components/schemas/EventClass"
|
||||||
},
|
},
|
||||||
|
"description": "The list of webhook flows supported by the connector",
|
||||||
"nullable": true
|
"nullable": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -8340,6 +8345,260 @@
|
|||||||
"US"
|
"US"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"CountryAlpha3": {
|
||||||
|
"type": "string",
|
||||||
|
"enum": [
|
||||||
|
"AFG",
|
||||||
|
"ALA",
|
||||||
|
"ALB",
|
||||||
|
"DZA",
|
||||||
|
"ASM",
|
||||||
|
"AND",
|
||||||
|
"AGO",
|
||||||
|
"AIA",
|
||||||
|
"ATA",
|
||||||
|
"ATG",
|
||||||
|
"ARG",
|
||||||
|
"ARM",
|
||||||
|
"ABW",
|
||||||
|
"AUS",
|
||||||
|
"AUT",
|
||||||
|
"AZE",
|
||||||
|
"BHS",
|
||||||
|
"BHR",
|
||||||
|
"BGD",
|
||||||
|
"BRB",
|
||||||
|
"BLR",
|
||||||
|
"BEL",
|
||||||
|
"BLZ",
|
||||||
|
"BEN",
|
||||||
|
"BMU",
|
||||||
|
"BTN",
|
||||||
|
"BOL",
|
||||||
|
"BES",
|
||||||
|
"BIH",
|
||||||
|
"BWA",
|
||||||
|
"BVT",
|
||||||
|
"BRA",
|
||||||
|
"IOT",
|
||||||
|
"BRN",
|
||||||
|
"BGR",
|
||||||
|
"BFA",
|
||||||
|
"BDI",
|
||||||
|
"CPV",
|
||||||
|
"KHM",
|
||||||
|
"CMR",
|
||||||
|
"CAN",
|
||||||
|
"CYM",
|
||||||
|
"CAF",
|
||||||
|
"TCD",
|
||||||
|
"CHL",
|
||||||
|
"CHN",
|
||||||
|
"CXR",
|
||||||
|
"CCK",
|
||||||
|
"COL",
|
||||||
|
"COM",
|
||||||
|
"COG",
|
||||||
|
"COD",
|
||||||
|
"COK",
|
||||||
|
"CRI",
|
||||||
|
"CIV",
|
||||||
|
"HRV",
|
||||||
|
"CUB",
|
||||||
|
"CUW",
|
||||||
|
"CYP",
|
||||||
|
"CZE",
|
||||||
|
"DNK",
|
||||||
|
"DJI",
|
||||||
|
"DMA",
|
||||||
|
"DOM",
|
||||||
|
"ECU",
|
||||||
|
"EGY",
|
||||||
|
"SLV",
|
||||||
|
"GNQ",
|
||||||
|
"ERI",
|
||||||
|
"EST",
|
||||||
|
"ETH",
|
||||||
|
"FLK",
|
||||||
|
"FRO",
|
||||||
|
"FJI",
|
||||||
|
"FIN",
|
||||||
|
"FRA",
|
||||||
|
"GUF",
|
||||||
|
"PYF",
|
||||||
|
"ATF",
|
||||||
|
"GAB",
|
||||||
|
"GMB",
|
||||||
|
"GEO",
|
||||||
|
"DEU",
|
||||||
|
"GHA",
|
||||||
|
"GIB",
|
||||||
|
"GRC",
|
||||||
|
"GRL",
|
||||||
|
"GRD",
|
||||||
|
"GLP",
|
||||||
|
"GUM",
|
||||||
|
"GTM",
|
||||||
|
"GGY",
|
||||||
|
"GIN",
|
||||||
|
"GNB",
|
||||||
|
"GUY",
|
||||||
|
"HTI",
|
||||||
|
"HMD",
|
||||||
|
"VAT",
|
||||||
|
"HND",
|
||||||
|
"HKG",
|
||||||
|
"HUN",
|
||||||
|
"ISL",
|
||||||
|
"IND",
|
||||||
|
"IDN",
|
||||||
|
"IRN",
|
||||||
|
"IRQ",
|
||||||
|
"IRL",
|
||||||
|
"IMN",
|
||||||
|
"ISR",
|
||||||
|
"ITA",
|
||||||
|
"JAM",
|
||||||
|
"JPN",
|
||||||
|
"JEY",
|
||||||
|
"JOR",
|
||||||
|
"KAZ",
|
||||||
|
"KEN",
|
||||||
|
"KIR",
|
||||||
|
"PRK",
|
||||||
|
"KOR",
|
||||||
|
"KWT",
|
||||||
|
"KGZ",
|
||||||
|
"LAO",
|
||||||
|
"LVA",
|
||||||
|
"LBN",
|
||||||
|
"LSO",
|
||||||
|
"LBR",
|
||||||
|
"LBY",
|
||||||
|
"LIE",
|
||||||
|
"LTU",
|
||||||
|
"LUX",
|
||||||
|
"MAC",
|
||||||
|
"MKD",
|
||||||
|
"MDG",
|
||||||
|
"MWI",
|
||||||
|
"MYS",
|
||||||
|
"MDV",
|
||||||
|
"MLI",
|
||||||
|
"MLT",
|
||||||
|
"MHL",
|
||||||
|
"MTQ",
|
||||||
|
"MRT",
|
||||||
|
"MUS",
|
||||||
|
"MYT",
|
||||||
|
"MEX",
|
||||||
|
"FSM",
|
||||||
|
"MDA",
|
||||||
|
"MCO",
|
||||||
|
"MNG",
|
||||||
|
"MNE",
|
||||||
|
"MSR",
|
||||||
|
"MAR",
|
||||||
|
"MOZ",
|
||||||
|
"MMR",
|
||||||
|
"NAM",
|
||||||
|
"NRU",
|
||||||
|
"NPL",
|
||||||
|
"NLD",
|
||||||
|
"NCL",
|
||||||
|
"NZL",
|
||||||
|
"NIC",
|
||||||
|
"NER",
|
||||||
|
"NGA",
|
||||||
|
"NIU",
|
||||||
|
"NFK",
|
||||||
|
"MNP",
|
||||||
|
"NOR",
|
||||||
|
"OMN",
|
||||||
|
"PAK",
|
||||||
|
"PLW",
|
||||||
|
"PSE",
|
||||||
|
"PAN",
|
||||||
|
"PNG",
|
||||||
|
"PRY",
|
||||||
|
"PER",
|
||||||
|
"PHL",
|
||||||
|
"PCN",
|
||||||
|
"POL",
|
||||||
|
"PRT",
|
||||||
|
"PRI",
|
||||||
|
"QAT",
|
||||||
|
"REU",
|
||||||
|
"ROU",
|
||||||
|
"RUS",
|
||||||
|
"RWA",
|
||||||
|
"BLM",
|
||||||
|
"SHN",
|
||||||
|
"KNA",
|
||||||
|
"LCA",
|
||||||
|
"MAF",
|
||||||
|
"SPM",
|
||||||
|
"VCT",
|
||||||
|
"WSM",
|
||||||
|
"SMR",
|
||||||
|
"STP",
|
||||||
|
"SAU",
|
||||||
|
"SEN",
|
||||||
|
"SRB",
|
||||||
|
"SYC",
|
||||||
|
"SLE",
|
||||||
|
"SGP",
|
||||||
|
"SXM",
|
||||||
|
"SVK",
|
||||||
|
"SVN",
|
||||||
|
"SLB",
|
||||||
|
"SOM",
|
||||||
|
"ZAF",
|
||||||
|
"SGS",
|
||||||
|
"SSD",
|
||||||
|
"ESP",
|
||||||
|
"LKA",
|
||||||
|
"SDN",
|
||||||
|
"SUR",
|
||||||
|
"SJM",
|
||||||
|
"SWZ",
|
||||||
|
"SWE",
|
||||||
|
"CHE",
|
||||||
|
"SYR",
|
||||||
|
"TWN",
|
||||||
|
"TJK",
|
||||||
|
"TZA",
|
||||||
|
"THA",
|
||||||
|
"TLS",
|
||||||
|
"TGO",
|
||||||
|
"TKL",
|
||||||
|
"TON",
|
||||||
|
"TTO",
|
||||||
|
"TUN",
|
||||||
|
"TUR",
|
||||||
|
"TKM",
|
||||||
|
"TCA",
|
||||||
|
"TUV",
|
||||||
|
"UGA",
|
||||||
|
"UKR",
|
||||||
|
"ARE",
|
||||||
|
"GBR",
|
||||||
|
"USA",
|
||||||
|
"UMI",
|
||||||
|
"URY",
|
||||||
|
"UZB",
|
||||||
|
"VUT",
|
||||||
|
"VEN",
|
||||||
|
"VNM",
|
||||||
|
"VGB",
|
||||||
|
"VIR",
|
||||||
|
"WLF",
|
||||||
|
"ESH",
|
||||||
|
"YEM",
|
||||||
|
"ZMB",
|
||||||
|
"ZWE"
|
||||||
|
]
|
||||||
|
},
|
||||||
"CreateApiKeyRequest": {
|
"CreateApiKeyRequest": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"description": "The request body for creating an API Key.",
|
"description": "The request body for creating an API Key.",
|
||||||
@ -22068,6 +22327,7 @@
|
|||||||
"required": [
|
"required": [
|
||||||
"payment_method",
|
"payment_method",
|
||||||
"payment_method_type",
|
"payment_method_type",
|
||||||
|
"payment_method_type_display_name",
|
||||||
"mandates",
|
"mandates",
|
||||||
"refunds",
|
"refunds",
|
||||||
"supported_capture_methods"
|
"supported_capture_methods"
|
||||||
@ -22079,6 +22339,10 @@
|
|||||||
"payment_method_type": {
|
"payment_method_type": {
|
||||||
"$ref": "#/components/schemas/PaymentMethodType"
|
"$ref": "#/components/schemas/PaymentMethodType"
|
||||||
},
|
},
|
||||||
|
"payment_method_type_display_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The display name of the payment method type"
|
||||||
|
},
|
||||||
"mandates": {
|
"mandates": {
|
||||||
"$ref": "#/components/schemas/FeatureStatus"
|
"$ref": "#/components/schemas/FeatureStatus"
|
||||||
},
|
},
|
||||||
@ -22089,13 +22353,15 @@
|
|||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/CaptureMethod"
|
"$ref": "#/components/schemas/CaptureMethod"
|
||||||
}
|
},
|
||||||
|
"description": "List of supported capture methods supported by the payment method type"
|
||||||
},
|
},
|
||||||
"supported_countries": {
|
"supported_countries": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/CountryAlpha2"
|
"$ref": "#/components/schemas/CountryAlpha3"
|
||||||
},
|
},
|
||||||
|
"description": "List of countries supported by the payment method type via the connector",
|
||||||
"uniqueItems": true,
|
"uniqueItems": true,
|
||||||
"nullable": true
|
"nullable": true
|
||||||
},
|
},
|
||||||
@ -22104,6 +22370,7 @@
|
|||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/Currency"
|
"$ref": "#/components/schemas/Currency"
|
||||||
},
|
},
|
||||||
|
"description": "List of currencies supported by the payment method type via the connector",
|
||||||
"uniqueItems": true,
|
"uniqueItems": true,
|
||||||
"nullable": true
|
"nullable": true
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9956,14 +9956,17 @@
|
|||||||
],
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"name": {
|
"name": {
|
||||||
"type": "string"
|
"type": "string",
|
||||||
|
"description": "The name of the connector"
|
||||||
},
|
},
|
||||||
"display_name": {
|
"display_name": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"description": "The display name of the connector",
|
||||||
"nullable": true
|
"nullable": true
|
||||||
},
|
},
|
||||||
"description": {
|
"description": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"description": "The description of the connector",
|
||||||
"nullable": true
|
"nullable": true
|
||||||
},
|
},
|
||||||
"category": {
|
"category": {
|
||||||
@ -9978,13 +9981,15 @@
|
|||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/SupportedPaymentMethod"
|
"$ref": "#/components/schemas/SupportedPaymentMethod"
|
||||||
}
|
},
|
||||||
|
"description": "The list of payment methods supported by the connector"
|
||||||
},
|
},
|
||||||
"supported_webhook_flows": {
|
"supported_webhook_flows": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/EventClass"
|
"$ref": "#/components/schemas/EventClass"
|
||||||
},
|
},
|
||||||
|
"description": "The list of webhook flows supported by the connector",
|
||||||
"nullable": true
|
"nullable": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -10451,6 +10456,260 @@
|
|||||||
"US"
|
"US"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"CountryAlpha3": {
|
||||||
|
"type": "string",
|
||||||
|
"enum": [
|
||||||
|
"AFG",
|
||||||
|
"ALA",
|
||||||
|
"ALB",
|
||||||
|
"DZA",
|
||||||
|
"ASM",
|
||||||
|
"AND",
|
||||||
|
"AGO",
|
||||||
|
"AIA",
|
||||||
|
"ATA",
|
||||||
|
"ATG",
|
||||||
|
"ARG",
|
||||||
|
"ARM",
|
||||||
|
"ABW",
|
||||||
|
"AUS",
|
||||||
|
"AUT",
|
||||||
|
"AZE",
|
||||||
|
"BHS",
|
||||||
|
"BHR",
|
||||||
|
"BGD",
|
||||||
|
"BRB",
|
||||||
|
"BLR",
|
||||||
|
"BEL",
|
||||||
|
"BLZ",
|
||||||
|
"BEN",
|
||||||
|
"BMU",
|
||||||
|
"BTN",
|
||||||
|
"BOL",
|
||||||
|
"BES",
|
||||||
|
"BIH",
|
||||||
|
"BWA",
|
||||||
|
"BVT",
|
||||||
|
"BRA",
|
||||||
|
"IOT",
|
||||||
|
"BRN",
|
||||||
|
"BGR",
|
||||||
|
"BFA",
|
||||||
|
"BDI",
|
||||||
|
"CPV",
|
||||||
|
"KHM",
|
||||||
|
"CMR",
|
||||||
|
"CAN",
|
||||||
|
"CYM",
|
||||||
|
"CAF",
|
||||||
|
"TCD",
|
||||||
|
"CHL",
|
||||||
|
"CHN",
|
||||||
|
"CXR",
|
||||||
|
"CCK",
|
||||||
|
"COL",
|
||||||
|
"COM",
|
||||||
|
"COG",
|
||||||
|
"COD",
|
||||||
|
"COK",
|
||||||
|
"CRI",
|
||||||
|
"CIV",
|
||||||
|
"HRV",
|
||||||
|
"CUB",
|
||||||
|
"CUW",
|
||||||
|
"CYP",
|
||||||
|
"CZE",
|
||||||
|
"DNK",
|
||||||
|
"DJI",
|
||||||
|
"DMA",
|
||||||
|
"DOM",
|
||||||
|
"ECU",
|
||||||
|
"EGY",
|
||||||
|
"SLV",
|
||||||
|
"GNQ",
|
||||||
|
"ERI",
|
||||||
|
"EST",
|
||||||
|
"ETH",
|
||||||
|
"FLK",
|
||||||
|
"FRO",
|
||||||
|
"FJI",
|
||||||
|
"FIN",
|
||||||
|
"FRA",
|
||||||
|
"GUF",
|
||||||
|
"PYF",
|
||||||
|
"ATF",
|
||||||
|
"GAB",
|
||||||
|
"GMB",
|
||||||
|
"GEO",
|
||||||
|
"DEU",
|
||||||
|
"GHA",
|
||||||
|
"GIB",
|
||||||
|
"GRC",
|
||||||
|
"GRL",
|
||||||
|
"GRD",
|
||||||
|
"GLP",
|
||||||
|
"GUM",
|
||||||
|
"GTM",
|
||||||
|
"GGY",
|
||||||
|
"GIN",
|
||||||
|
"GNB",
|
||||||
|
"GUY",
|
||||||
|
"HTI",
|
||||||
|
"HMD",
|
||||||
|
"VAT",
|
||||||
|
"HND",
|
||||||
|
"HKG",
|
||||||
|
"HUN",
|
||||||
|
"ISL",
|
||||||
|
"IND",
|
||||||
|
"IDN",
|
||||||
|
"IRN",
|
||||||
|
"IRQ",
|
||||||
|
"IRL",
|
||||||
|
"IMN",
|
||||||
|
"ISR",
|
||||||
|
"ITA",
|
||||||
|
"JAM",
|
||||||
|
"JPN",
|
||||||
|
"JEY",
|
||||||
|
"JOR",
|
||||||
|
"KAZ",
|
||||||
|
"KEN",
|
||||||
|
"KIR",
|
||||||
|
"PRK",
|
||||||
|
"KOR",
|
||||||
|
"KWT",
|
||||||
|
"KGZ",
|
||||||
|
"LAO",
|
||||||
|
"LVA",
|
||||||
|
"LBN",
|
||||||
|
"LSO",
|
||||||
|
"LBR",
|
||||||
|
"LBY",
|
||||||
|
"LIE",
|
||||||
|
"LTU",
|
||||||
|
"LUX",
|
||||||
|
"MAC",
|
||||||
|
"MKD",
|
||||||
|
"MDG",
|
||||||
|
"MWI",
|
||||||
|
"MYS",
|
||||||
|
"MDV",
|
||||||
|
"MLI",
|
||||||
|
"MLT",
|
||||||
|
"MHL",
|
||||||
|
"MTQ",
|
||||||
|
"MRT",
|
||||||
|
"MUS",
|
||||||
|
"MYT",
|
||||||
|
"MEX",
|
||||||
|
"FSM",
|
||||||
|
"MDA",
|
||||||
|
"MCO",
|
||||||
|
"MNG",
|
||||||
|
"MNE",
|
||||||
|
"MSR",
|
||||||
|
"MAR",
|
||||||
|
"MOZ",
|
||||||
|
"MMR",
|
||||||
|
"NAM",
|
||||||
|
"NRU",
|
||||||
|
"NPL",
|
||||||
|
"NLD",
|
||||||
|
"NCL",
|
||||||
|
"NZL",
|
||||||
|
"NIC",
|
||||||
|
"NER",
|
||||||
|
"NGA",
|
||||||
|
"NIU",
|
||||||
|
"NFK",
|
||||||
|
"MNP",
|
||||||
|
"NOR",
|
||||||
|
"OMN",
|
||||||
|
"PAK",
|
||||||
|
"PLW",
|
||||||
|
"PSE",
|
||||||
|
"PAN",
|
||||||
|
"PNG",
|
||||||
|
"PRY",
|
||||||
|
"PER",
|
||||||
|
"PHL",
|
||||||
|
"PCN",
|
||||||
|
"POL",
|
||||||
|
"PRT",
|
||||||
|
"PRI",
|
||||||
|
"QAT",
|
||||||
|
"REU",
|
||||||
|
"ROU",
|
||||||
|
"RUS",
|
||||||
|
"RWA",
|
||||||
|
"BLM",
|
||||||
|
"SHN",
|
||||||
|
"KNA",
|
||||||
|
"LCA",
|
||||||
|
"MAF",
|
||||||
|
"SPM",
|
||||||
|
"VCT",
|
||||||
|
"WSM",
|
||||||
|
"SMR",
|
||||||
|
"STP",
|
||||||
|
"SAU",
|
||||||
|
"SEN",
|
||||||
|
"SRB",
|
||||||
|
"SYC",
|
||||||
|
"SLE",
|
||||||
|
"SGP",
|
||||||
|
"SXM",
|
||||||
|
"SVK",
|
||||||
|
"SVN",
|
||||||
|
"SLB",
|
||||||
|
"SOM",
|
||||||
|
"ZAF",
|
||||||
|
"SGS",
|
||||||
|
"SSD",
|
||||||
|
"ESP",
|
||||||
|
"LKA",
|
||||||
|
"SDN",
|
||||||
|
"SUR",
|
||||||
|
"SJM",
|
||||||
|
"SWZ",
|
||||||
|
"SWE",
|
||||||
|
"CHE",
|
||||||
|
"SYR",
|
||||||
|
"TWN",
|
||||||
|
"TJK",
|
||||||
|
"TZA",
|
||||||
|
"THA",
|
||||||
|
"TLS",
|
||||||
|
"TGO",
|
||||||
|
"TKL",
|
||||||
|
"TON",
|
||||||
|
"TTO",
|
||||||
|
"TUN",
|
||||||
|
"TUR",
|
||||||
|
"TKM",
|
||||||
|
"TCA",
|
||||||
|
"TUV",
|
||||||
|
"UGA",
|
||||||
|
"UKR",
|
||||||
|
"ARE",
|
||||||
|
"GBR",
|
||||||
|
"USA",
|
||||||
|
"UMI",
|
||||||
|
"URY",
|
||||||
|
"UZB",
|
||||||
|
"VUT",
|
||||||
|
"VEN",
|
||||||
|
"VNM",
|
||||||
|
"VGB",
|
||||||
|
"VIR",
|
||||||
|
"WLF",
|
||||||
|
"ESH",
|
||||||
|
"YEM",
|
||||||
|
"ZMB",
|
||||||
|
"ZWE"
|
||||||
|
]
|
||||||
|
},
|
||||||
"CreateApiKeyRequest": {
|
"CreateApiKeyRequest": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"description": "The request body for creating an API Key.",
|
"description": "The request body for creating an API Key.",
|
||||||
@ -26474,6 +26733,7 @@
|
|||||||
"required": [
|
"required": [
|
||||||
"payment_method",
|
"payment_method",
|
||||||
"payment_method_type",
|
"payment_method_type",
|
||||||
|
"payment_method_type_display_name",
|
||||||
"mandates",
|
"mandates",
|
||||||
"refunds",
|
"refunds",
|
||||||
"supported_capture_methods"
|
"supported_capture_methods"
|
||||||
@ -26485,6 +26745,10 @@
|
|||||||
"payment_method_type": {
|
"payment_method_type": {
|
||||||
"$ref": "#/components/schemas/PaymentMethodType"
|
"$ref": "#/components/schemas/PaymentMethodType"
|
||||||
},
|
},
|
||||||
|
"payment_method_type_display_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The display name of the payment method type"
|
||||||
|
},
|
||||||
"mandates": {
|
"mandates": {
|
||||||
"$ref": "#/components/schemas/FeatureStatus"
|
"$ref": "#/components/schemas/FeatureStatus"
|
||||||
},
|
},
|
||||||
@ -26495,13 +26759,15 @@
|
|||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/CaptureMethod"
|
"$ref": "#/components/schemas/CaptureMethod"
|
||||||
}
|
},
|
||||||
|
"description": "List of supported capture methods supported by the payment method type"
|
||||||
},
|
},
|
||||||
"supported_countries": {
|
"supported_countries": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/CountryAlpha2"
|
"$ref": "#/components/schemas/CountryAlpha3"
|
||||||
},
|
},
|
||||||
|
"description": "List of countries supported by the payment method type via the connector",
|
||||||
"uniqueItems": true,
|
"uniqueItems": true,
|
||||||
"nullable": true
|
"nullable": true
|
||||||
},
|
},
|
||||||
@ -26510,6 +26776,7 @@
|
|||||||
"items": {
|
"items": {
|
||||||
"$ref": "#/components/schemas/Currency"
|
"$ref": "#/components/schemas/Currency"
|
||||||
},
|
},
|
||||||
|
"description": "List of currencies supported by the payment method type via the connector",
|
||||||
"uniqueItems": true,
|
"uniqueItems": true,
|
||||||
"nullable": true
|
"nullable": true
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,25 +3,24 @@ use std::collections::HashSet;
|
|||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use utoipa::ToSchema;
|
use utoipa::ToSchema;
|
||||||
|
|
||||||
use crate::enums::{
|
|
||||||
CaptureMethod, CardNetwork, Connector, CountryAlpha2, Currency, EventClass, FeatureStatus,
|
|
||||||
PaymentConnectorCategory, PaymentMethod, PaymentMethodType,
|
|
||||||
};
|
|
||||||
|
|
||||||
#[derive(Default, Debug, Deserialize, Serialize, Clone, ToSchema)]
|
#[derive(Default, Debug, Deserialize, Serialize, Clone, ToSchema)]
|
||||||
pub struct FeatureMatrixRequest {
|
pub struct FeatureMatrixRequest {
|
||||||
// List of connectors for which the feature matrix is requested
|
// List of connectors for which the feature matrix is requested
|
||||||
pub connectors: Option<Vec<Connector>>,
|
#[schema(value_type = Option<Vec<Connector>>)]
|
||||||
|
pub connectors: Option<Vec<common_enums::connector_enums::Connector>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, ToSchema, Serialize)]
|
#[derive(Debug, Clone, ToSchema, Serialize)]
|
||||||
pub struct CardSpecificFeatures {
|
pub struct CardSpecificFeatures {
|
||||||
/// Indicates whether three_ds card payments are supported.
|
/// Indicates whether three_ds card payments are supported
|
||||||
pub three_ds: FeatureStatus,
|
#[schema(value_type = FeatureStatus)]
|
||||||
/// Indicates whether non three_ds card payments are supported.
|
pub three_ds: common_enums::FeatureStatus,
|
||||||
pub no_three_ds: FeatureStatus,
|
/// Indicates whether non three_ds card payments are supported
|
||||||
|
#[schema(value_type = FeatureStatus)]
|
||||||
|
pub no_three_ds: common_enums::FeatureStatus,
|
||||||
/// List of supported card networks
|
/// List of supported card networks
|
||||||
pub supported_card_networks: Vec<CardNetwork>,
|
#[schema(value_type = Vec<CardNetwork>)]
|
||||||
|
pub supported_card_networks: Vec<common_enums::CardNetwork>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, ToSchema, Serialize)]
|
#[derive(Debug, Clone, ToSchema, Serialize)]
|
||||||
@ -33,25 +32,50 @@ pub enum PaymentMethodSpecificFeatures {
|
|||||||
|
|
||||||
#[derive(Debug, ToSchema, Serialize)]
|
#[derive(Debug, ToSchema, Serialize)]
|
||||||
pub struct SupportedPaymentMethod {
|
pub struct SupportedPaymentMethod {
|
||||||
pub payment_method: PaymentMethod,
|
/// The payment method supported by the connector
|
||||||
pub payment_method_type: PaymentMethodType,
|
#[schema(value_type = PaymentMethod)]
|
||||||
pub mandates: FeatureStatus,
|
pub payment_method: common_enums::PaymentMethod,
|
||||||
pub refunds: FeatureStatus,
|
/// The payment method type supported by the connector
|
||||||
pub supported_capture_methods: Vec<CaptureMethod>,
|
#[schema(value_type = PaymentMethodType)]
|
||||||
|
pub payment_method_type: common_enums::PaymentMethodType,
|
||||||
|
/// The display name of the payment method type
|
||||||
|
pub payment_method_type_display_name: String,
|
||||||
|
/// Indicates whether the payment method supports mandates via the connector
|
||||||
|
#[schema(value_type = FeatureStatus)]
|
||||||
|
pub mandates: common_enums::FeatureStatus,
|
||||||
|
/// Indicates whether the payment method supports refunds via the connector
|
||||||
|
#[schema(value_type = FeatureStatus)]
|
||||||
|
pub refunds: common_enums::FeatureStatus,
|
||||||
|
/// List of supported capture methods supported by the payment method type
|
||||||
|
#[schema(value_type = Vec<CaptureMethod>)]
|
||||||
|
pub supported_capture_methods: Vec<common_enums::CaptureMethod>,
|
||||||
|
/// Information on the Payment method specific payment features
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
pub payment_method_specific_features: Option<PaymentMethodSpecificFeatures>,
|
pub payment_method_specific_features: Option<PaymentMethodSpecificFeatures>,
|
||||||
pub supported_countries: Option<HashSet<CountryAlpha2>>,
|
/// List of countries supported by the payment method type via the connector
|
||||||
pub supported_currencies: Option<HashSet<Currency>>,
|
#[schema(value_type = Option<HashSet<CountryAlpha3>>)]
|
||||||
|
pub supported_countries: Option<HashSet<common_enums::CountryAlpha3>>,
|
||||||
|
/// List of currencies supported by the payment method type via the connector
|
||||||
|
#[schema(value_type = Option<HashSet<Currency>>)]
|
||||||
|
pub supported_currencies: Option<HashSet<common_enums::Currency>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, ToSchema, Serialize)]
|
#[derive(Debug, ToSchema, Serialize)]
|
||||||
pub struct ConnectorFeatureMatrixResponse {
|
pub struct ConnectorFeatureMatrixResponse {
|
||||||
|
/// The name of the connector
|
||||||
pub name: String,
|
pub name: String,
|
||||||
|
/// The display name of the connector
|
||||||
pub display_name: Option<String>,
|
pub display_name: Option<String>,
|
||||||
|
/// The description of the connector
|
||||||
pub description: Option<String>,
|
pub description: Option<String>,
|
||||||
pub category: Option<PaymentConnectorCategory>,
|
/// The category of the connector
|
||||||
|
#[schema(value_type = Option<PaymentConnectorCategory>, example = "payment_gateway")]
|
||||||
|
pub category: Option<common_enums::PaymentConnectorCategory>,
|
||||||
|
/// The list of payment methods supported by the connector
|
||||||
pub supported_payment_methods: Vec<SupportedPaymentMethod>,
|
pub supported_payment_methods: Vec<SupportedPaymentMethod>,
|
||||||
pub supported_webhook_flows: Option<Vec<EventClass>>,
|
/// The list of webhook flows supported by the connector
|
||||||
|
#[schema(value_type = Option<Vec<EventClass>>)]
|
||||||
|
pub supported_webhook_flows: Option<Vec<common_enums::EventClass>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, ToSchema)]
|
#[derive(Debug, Serialize, ToSchema)]
|
||||||
|
|||||||
@ -1842,6 +1842,110 @@ impl PaymentMethodType {
|
|||||||
pub fn should_check_for_customer_saved_payment_method_type(self) -> bool {
|
pub fn should_check_for_customer_saved_payment_method_type(self) -> bool {
|
||||||
matches!(self, Self::ApplePay | Self::GooglePay | Self::SamsungPay)
|
matches!(self, Self::ApplePay | Self::GooglePay | Self::SamsungPay)
|
||||||
}
|
}
|
||||||
|
pub fn to_display_name(&self) -> String {
|
||||||
|
let display_name = match self {
|
||||||
|
Self::Ach => "ACH Direct Debit",
|
||||||
|
Self::Bacs => "BACS Direct Debit",
|
||||||
|
Self::Affirm => "Affirm",
|
||||||
|
Self::AfterpayClearpay => "Afterpay Clearpay",
|
||||||
|
Self::Alfamart => "Alfamart",
|
||||||
|
Self::AliPay => "Alipay",
|
||||||
|
Self::AliPayHk => "AlipayHK",
|
||||||
|
Self::Alma => "Alma",
|
||||||
|
Self::AmazonPay => "Amazon Pay",
|
||||||
|
Self::ApplePay => "Apple Pay",
|
||||||
|
Self::Atome => "Atome",
|
||||||
|
Self::BancontactCard => "Bancontact Card",
|
||||||
|
Self::Becs => "BECS Direct Debit",
|
||||||
|
Self::Benefit => "Benefit",
|
||||||
|
Self::Bizum => "Bizum",
|
||||||
|
Self::Blik => "BLIK",
|
||||||
|
Self::Boleto => "Boleto Bancário",
|
||||||
|
Self::BcaBankTransfer => "BCA Bank Transfer",
|
||||||
|
Self::BniVa => "BNI Virtual Account",
|
||||||
|
Self::BriVa => "BRI Virtual Account",
|
||||||
|
Self::CardRedirect => "Card Redirect",
|
||||||
|
Self::CimbVa => "CIMB Virtual Account",
|
||||||
|
Self::ClassicReward => "Classic Reward",
|
||||||
|
Self::Credit => "Credit Card",
|
||||||
|
Self::CryptoCurrency => "Crypto",
|
||||||
|
Self::Cashapp => "Cash App",
|
||||||
|
Self::Dana => "DANA",
|
||||||
|
Self::DanamonVa => "Danamon Virtual Account",
|
||||||
|
Self::Debit => "Debit Card",
|
||||||
|
Self::DuitNow => "DuitNow",
|
||||||
|
Self::Efecty => "Efecty",
|
||||||
|
Self::Eft => "EFT",
|
||||||
|
Self::Eps => "EPS",
|
||||||
|
Self::Fps => "FPS",
|
||||||
|
Self::Evoucher => "Evoucher",
|
||||||
|
Self::Giropay => "Giropay",
|
||||||
|
Self::Givex => "Givex",
|
||||||
|
Self::GooglePay => "Google Pay",
|
||||||
|
Self::GoPay => "GoPay",
|
||||||
|
Self::Gcash => "GCash",
|
||||||
|
Self::Ideal => "iDEAL",
|
||||||
|
Self::Interac => "Interac",
|
||||||
|
Self::Indomaret => "Indomaret",
|
||||||
|
Self::InstantBankTransfer => "Instant Bank Transfer",
|
||||||
|
Self::Klarna => "Klarna",
|
||||||
|
Self::KakaoPay => "KakaoPay",
|
||||||
|
Self::LocalBankRedirect => "Local Bank Redirect",
|
||||||
|
Self::MandiriVa => "Mandiri Virtual Account",
|
||||||
|
Self::Knet => "KNET",
|
||||||
|
Self::MbWay => "MB WAY",
|
||||||
|
Self::MobilePay => "MobilePay",
|
||||||
|
Self::Momo => "MoMo",
|
||||||
|
Self::MomoAtm => "MoMo ATM",
|
||||||
|
Self::Multibanco => "Multibanco",
|
||||||
|
Self::OnlineBankingThailand => "Online Banking Thailand",
|
||||||
|
Self::OnlineBankingCzechRepublic => "Online Banking Czech Republic",
|
||||||
|
Self::OnlineBankingFinland => "Online Banking Finland",
|
||||||
|
Self::OnlineBankingFpx => "Online Banking FPX",
|
||||||
|
Self::OnlineBankingPoland => "Online Banking Poland",
|
||||||
|
Self::OnlineBankingSlovakia => "Online Banking Slovakia",
|
||||||
|
Self::Oxxo => "OXXO",
|
||||||
|
Self::PagoEfectivo => "PagoEfectivo",
|
||||||
|
Self::PermataBankTransfer => "Permata Bank Transfer",
|
||||||
|
Self::OpenBankingUk => "Open Banking UK",
|
||||||
|
Self::PayBright => "PayBright",
|
||||||
|
Self::Paypal => "PayPal",
|
||||||
|
Self::Paze => "Paze",
|
||||||
|
Self::Pix => "Pix",
|
||||||
|
Self::PaySafeCard => "PaySafeCard",
|
||||||
|
Self::Przelewy24 => "Przelewy24",
|
||||||
|
Self::PromptPay => "PromptPay",
|
||||||
|
Self::Pse => "PSE",
|
||||||
|
Self::RedCompra => "RedCompra",
|
||||||
|
Self::RedPagos => "RedPagos",
|
||||||
|
Self::SamsungPay => "Samsung Pay",
|
||||||
|
Self::Sepa => "SEPA Direct Debit",
|
||||||
|
Self::SepaBankTransfer => "SEPA Bank Transfer",
|
||||||
|
Self::Sofort => "Sofort",
|
||||||
|
Self::Swish => "Swish",
|
||||||
|
Self::TouchNGo => "Touch 'n Go",
|
||||||
|
Self::Trustly => "Trustly",
|
||||||
|
Self::Twint => "TWINT",
|
||||||
|
Self::UpiCollect => "UPI Collect",
|
||||||
|
Self::UpiIntent => "UPI Intent",
|
||||||
|
Self::Vipps => "Vipps",
|
||||||
|
Self::VietQr => "VietQR",
|
||||||
|
Self::Venmo => "Venmo",
|
||||||
|
Self::Walley => "Walley",
|
||||||
|
Self::WeChatPay => "WeChat Pay",
|
||||||
|
Self::SevenEleven => "7-Eleven",
|
||||||
|
Self::Lawson => "Lawson",
|
||||||
|
Self::MiniStop => "Mini Stop",
|
||||||
|
Self::FamilyMart => "FamilyMart",
|
||||||
|
Self::Seicomart => "Seicomart",
|
||||||
|
Self::PayEasy => "PayEasy",
|
||||||
|
Self::LocalBankTransfer => "Local Bank Transfer",
|
||||||
|
Self::Mifinity => "MiFinity",
|
||||||
|
Self::OpenBankingPIS => "Open Banking PIS",
|
||||||
|
Self::DirectCarrierBilling => "Direct Carrier Billing",
|
||||||
|
};
|
||||||
|
display_name.to_string()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl masking::SerializableSecret for PaymentMethodType {}
|
impl masking::SerializableSecret for PaymentMethodType {}
|
||||||
@ -2240,7 +2344,7 @@ pub enum RequestIncrementalAuthorization {
|
|||||||
Default,
|
Default,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Copy, Debug, Serialize, Deserialize, strum::Display,)]
|
#[derive(Clone, Copy, Eq, Hash, PartialEq, Debug, Serialize, Deserialize, strum::Display, ToSchema,)]
|
||||||
#[rustfmt::skip]
|
#[rustfmt::skip]
|
||||||
pub enum CountryAlpha3 {
|
pub enum CountryAlpha3 {
|
||||||
AFG, ALA, ALB, DZA, ASM, AND, AGO, AIA, ATA, ATG, ARG, ARM, ABW, AUS, AUT,
|
AFG, ALA, ALB, DZA, ASM, AND, AGO, AIA, ATA, ATG, ARG, ARM, ABW, AUS, AUT,
|
||||||
|
|||||||
@ -306,6 +306,7 @@ Never share your secret api keys. Keep them guarded and secure.
|
|||||||
api_models::enums::DisputeStage,
|
api_models::enums::DisputeStage,
|
||||||
api_models::enums::DisputeStatus,
|
api_models::enums::DisputeStatus,
|
||||||
api_models::enums::CountryAlpha2,
|
api_models::enums::CountryAlpha2,
|
||||||
|
api_models::enums::CountryAlpha3,
|
||||||
api_models::enums::FieldType,
|
api_models::enums::FieldType,
|
||||||
api_models::enums::FrmAction,
|
api_models::enums::FrmAction,
|
||||||
api_models::enums::FrmPreferredFlowTypes,
|
api_models::enums::FrmPreferredFlowTypes,
|
||||||
|
|||||||
@ -273,6 +273,7 @@ Never share your secret api keys. Keep them guarded and secure.
|
|||||||
api_models::enums::DisputeStage,
|
api_models::enums::DisputeStage,
|
||||||
api_models::enums::DisputeStatus,
|
api_models::enums::DisputeStatus,
|
||||||
api_models::enums::CountryAlpha2,
|
api_models::enums::CountryAlpha2,
|
||||||
|
api_models::enums::CountryAlpha3,
|
||||||
api_models::enums::FieldType,
|
api_models::enums::FieldType,
|
||||||
api_models::enums::FrmAction,
|
api_models::enums::FrmAction,
|
||||||
api_models::enums::FrmPreferredFlowTypes,
|
api_models::enums::FrmPreferredFlowTypes,
|
||||||
|
|||||||
@ -131,8 +131,13 @@ fn build_payment_method_wise_feature_details(
|
|||||||
)
|
)
|
||||||
});
|
});
|
||||||
|
|
||||||
let supported_countries =
|
let supported_countries = payment_method_type_config.and_then(|config| {
|
||||||
payment_method_type_config.and_then(|config| config.country.clone());
|
config.country.clone().map(|set| {
|
||||||
|
set.into_iter()
|
||||||
|
.map(common_enums::CountryAlpha2::from_alpha2_to_alpha3)
|
||||||
|
.collect::<std::collections::HashSet<_>>()
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
let supported_currencies =
|
let supported_currencies =
|
||||||
payment_method_type_config.and_then(|config| config.currency.clone());
|
payment_method_type_config.and_then(|config| config.currency.clone());
|
||||||
@ -140,6 +145,7 @@ fn build_payment_method_wise_feature_details(
|
|||||||
feature_matrix::SupportedPaymentMethod {
|
feature_matrix::SupportedPaymentMethod {
|
||||||
payment_method,
|
payment_method,
|
||||||
payment_method_type: *payment_method_type,
|
payment_method_type: *payment_method_type,
|
||||||
|
payment_method_type_display_name: payment_method_type.to_display_name(),
|
||||||
mandates: feature_metadata.mandates,
|
mandates: feature_metadata.mandates,
|
||||||
refunds: feature_metadata.refunds,
|
refunds: feature_metadata.refunds,
|
||||||
supported_capture_methods: feature_metadata.supported_capture_methods.clone(),
|
supported_capture_methods: feature_metadata.supported_capture_methods.clone(),
|
||||||
|
|||||||
Reference in New Issue
Block a user