0条评论
还没有人评论过~
官方文档:https://docs.open.alipay.com/api_1/alipay.trade.refund
参考代码:
from alipay import AliPay
from urllib2 import urlopen
import os
class AliPayNew(AliPay):
def api_alipay_trade_refund(self, refund_amount, out_trade_no=None, trade_no=None, **kwargs):#原方法存故障,重写该方法
biz_content = {
"refund_amount": refund_amount
}
biz_content.update(**kwargs)
if out_trade_no:
biz_content["out_trade_no"] = out_trade_no
if trade_no:
biz_content["trade_no"] = trade_no
data = self.build_body("alipay.trade.refund", biz_content)
url = self._gateway + "?" + self.sign_data(data)
raw_string = urlopen(url, timeout=15).read().decode("utf-8")
return raw_string
ssh_keys_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), "ssh_keys")
app_private_key_path = os.path.join(ssh_keys_path, "app_private_key.pem") #指定证书路径
alipay_public_key_path = os.path.join(ssh_keys_path, "app_public_key.pem")
appid = "AliPayAPPID"
alipay = AliPayNew(appid=appid, app_private_key_path = app_private_key_path,
alipay_public_key_path = alipay_public_key_path, sign_type = 'RSA2',
app_notify_url = None)
notify_url = "http://{0}/app/alipayrefund/callback" #回调函数URL
order_string = alipay.api_alipay_trade_refund(
out_trade_no="out_trade_no",
refund_amount="refund_amount",
notify_url=notify_url
)
print order_string #打印结果
#上面的相关参数可以支付宝开发文档找到,填写相应参数即可
来源:https://www.cnblogs.com/wjohh/p/10792901.html