Skip to content

Commit d355a69

Browse files
committed
1. CKP二期支持商户传入可选支付方式列表
2. AMS独立绑卡支持MIT交易
1 parent e43626d commit d355a69

File tree

8 files changed

+92
-3
lines changed

8 files changed

+92
-3
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## 1.4.0 - 2024-12-24
4+
* [#24](https://github.com/alipay/global-open-sdk-python/pull/24) feature-241224
5+
- CKP二期支持商户传入可选支付方式列表
6+
- AMS独立绑卡支持MIT交易
7+
38
## 1.3.9 - 2024-12-18
49
* [#23](https://github.com/alipay/global-open-sdk-python/pull/23) feature-update-version
510
- update version

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
```
22
Language:Python
33
Python version:2.7+
4-
Releass ^1.3.9
4+
Releass ^1.4.0
55
Copyright:Ant financial services group
66
```
77

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
from com.alipay.ams.api.model.payment_method_type_item import PaymentMethodTypeItem
2+
3+
4+
class AvailablePaymentMethod:
5+
6+
def __init__(self):
7+
self.__payment_method_type_list = None #type: list[PaymentMethodTypeItem]
8+
9+
10+
@property
11+
def payment_method_type_list(self):
12+
return self.__payment_method_type_list
13+
14+
@payment_method_type_list.setter
15+
def payment_method_type_list(self, payment_method_type_list):
16+
if not isinstance(payment_method_type_list, list):
17+
raise TypeError("payment_method_type_list should be list[PaymentMethodTypeItem]")
18+
19+
for item in payment_method_type_list:
20+
if not isinstance(item, PaymentMethodTypeItem):
21+
raise TypeError("item should be type of PaymentMethodTypeItem")
22+
23+
self.__payment_method_type_list = payment_method_type_list
24+
25+
26+
def to_ams_dict(self):
27+
params = dict()
28+
if self.__payment_method_type_list is not None:
29+
params['paymentMethodTypeList'] = [item.to_ams_dict() for item in self.__payment_method_type_list]
30+
31+
return params

com/alipay/ams/api/model/payment_method_detail.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ def __init__(self):
2020
self.__coupon = None # type: CouponPaymentMethodDetail
2121
self.__extend_info = None
2222
self.__payment_method_type = None
23+
self.__is_3DS_authentication = None
2324

2425
@property
2526
def payment_method_detail_type(self):
@@ -68,6 +69,14 @@ def coupon(self, value):
6869
def extend_info(self, value):
6970
self.__extend_info = value
7071

72+
@property
73+
def is_3DS_authentication(self):
74+
return self.__is_3DS_authentication
75+
76+
@is_3DS_authentication.setter
77+
def is_3DS_authentication(self, value):
78+
self.__is_3DS_authentication = value
79+
7180

7281

7382
def parse_rsp_body(self, external_payment_method_detail_body):
@@ -122,5 +131,7 @@ def to_ams_dict(self):
122131
params['extendInfo'] = self.extend_info
123132
if self.payment_method_type:
124133
params['paymentMethodType'] = self.payment_method_type
134+
if self.is_3DS_authentication:
135+
params['is3DSAuthentication'] = self.is_3DS_authentication
125136

126137
return params
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
class PaymentMethodTypeItem:
2+
3+
def __init__(self):
4+
self.__payment_method_type = None
5+
self.__payment_method_order = None
6+
self.__express_checkout = None
7+
8+
@property
9+
def payment_method_type(self):
10+
return self.__payment_method_type
11+
12+
@payment_method_type.setter
13+
def payment_method_type(self, value):
14+
self.__payment_method_type = value
15+
16+
@property
17+
def payment_method_order(self):
18+
return self.__payment_method_order
19+
20+
@payment_method_order.setter
21+
def payment_method_order(self, value):
22+
self.__payment_method_order = value
23+
24+
@property
25+
def express_checkout(self):
26+
return self.__express_checkout
27+
28+
@express_checkout.setter
29+
def express_checkout(self, value):
30+
self.__express_checkout = value
31+
32+
def to_ams_dict(self):
33+
params = dict()
34+
if hasattr(self, "payment_method_type") and self.payment_method_type:
35+
params['paymentMethodType'] = self.payment_method_type
36+
if hasattr(self, "payment_method_order") and self.payment_method_order:
37+
params['paymentMethodOrder'] = self.payment_method_order
38+
if hasattr(self, "express_checkout") and self.express_checkout:
39+
params['expressCheckout'] = self.express_checkout.to_ams_dict()
40+
return params

com/alipay/ams/api/request/pay/alipay_create_session_request.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import json
22

3+
from com.alipay.ams.api.model.available_payment_method import AvailablePaymentMethod
34
from com.alipay.ams.api.model.agreement_info import AgreementInfo
45
from com.alipay.ams.api.model.amount import Amount
56
from com.alipay.ams.api.model.antom_path_constants import AntomPathConstants
@@ -33,6 +34,7 @@ def __init__(self):
3334
self.__product_scene = None
3435
self.__saved_payment_methods = None # type: list[PaymentMethod]
3536
self.__locale = None
37+
self.__available_payment_method = None # type: list[AvailablePaymentMethod]
3638

3739
@property
3840
def product_code(self):

setup.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[metadata]
22
name = global-alipay-sdk-python
3-
version = 1.3.9
3+
version = 1.4.0
44

55
[options]
66
packages = find:

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
AUTHOR = "guodong.wzj"
1313
AUTHOR_EMAIL = "[email protected]"
1414
URL = "https://github.com/alipay/global-open-sdk-python"
15-
VERSION = "1.3.9"
15+
VERSION = "1.4.0"
1616
'''
1717
only python2 need enum34、pytz
1818
'''

0 commit comments

Comments
 (0)