身份和行为 签名算法 统一下单接口 统一收单 签名和验签 整数 浮点数

客户端代码生成签名
服务端生成签名

两者一致 身份和行为无误了

【微信支付】JSAPI支付开发者文档 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1

整数

标价金额 total_fee Int 88 订单总金额,单位为分,详见支付金额
alipay.trade.create 免费 统一收单交易创建接口
alipay.trade.pay 免费 统一收单交易支付接口

身份 和行为 均有 签名体现

开放平台文档中心 https://docs.open.alipay.com/291/105974

更新时间:2018-02-07
阅读角色:技术同学

技术同学把1).APPID,2).应用私钥,3).支付宝公钥,配置在代码中,对请求内容进行签名,并对支付宝返回的内容进行验签。

支付宝开放平台SDK封装了签名和验签过程,只需配置账号及密钥参数即可,强烈建议使用。

TIPS:文中代码部分以JAVA语言演示,其他语言请参考各自SDK。

使用开放平台SDK接入

开放平台SDK封装了签名实现,只需在创建DefaultAlipayClient对象时,设置请求网关(gateway),应用id(app_id),应用私钥(private_key),编码格式(charset),支付宝公钥(alipay_public_key),签名类型(sign_type)即可,报文请求时会自动进行签名。

AlipayClient alipayClient = new DefaultAlipayClient(gateway,app_id,private_key,"json",charset,alipay_public_key,sign_type);

【钱从哪里到哪里,货从哪里到哪里,先有钱还是先有货】

@精确到小数点后两位

开放平台文档中心 https://docs.open.alipay.com/api_1/alipay.trade.pay

_amount Price 可选 11 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
如果同时传入【可打折金额】和【不可打折金额】,该参数可以不用传入;
如果同时传入了【可打折金额】,【不可打折金额】,【订单总金额】三者,则必须满足如下条件:【订单总金额】=【可打折金额】+【不可打折金额】

【微信支付】JSAPI支付开发者文档 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_2

1、交易金额

交易金额默认为人民币交易,接口中参数支付金额单位为【分】,参数值不能带小数。对账单中的交易金额单位为【元】。

外币交易的支付金额精确到币种的最小单位,参数值不能带小数点。