悠悠楠杉
易支付怎么对接网站?从发起支付到确认到账
易支付对接网站,通常是由网站创建订单,把订单信息按服务商接口要求提交到收银台;付款后,再由网站接收支付结果并更新订单。不同服务商都可能使用“易支付”这个名称,接口地址、签名算法和字段要求未必相同,开发时要以当前服务商提供的文档为准。
页面能跳转,订单仍显示未支付
接入前,先确认商户后台已经开通所需的支付方式,并拿到商户号、密钥及对应的接口文档。网站也要能保存自己的订单号和应付金额:订单号用于把支付结果对应回购买记录,金额用于付款后核对,不能只依赖浏览器传回的内容。
用户点击付款时,网站服务端生成支付请求,填写订单号、金额、支付方式,以及文档要求的回跳地址和异步通知地址,再按规定生成签名。签名用于让支付服务端核验请求内容。参数排序、编码方式或参与签名的字段只要与文档不一致,就可能出现“签名错误”;这类问题应对照服务端实际提交的参数排查,不要把商户密钥放进前端页面。
支付完成后,用户浏览器回到网站,只适合展示“正在确认支付结果”等页面提示。用户可能关闭页面,回跳请求也可能被修改;仅凭回跳就发货或开通服务,会让订单状态缺少可靠依据。
用户付了款,网站没收到通知
假设一个网站已经能正常打开收银台,用户付款后却一直看到“待支付”。排查时先看网站服务器有没有收到异步通知,而不是反复修改收银台页面。异步通知是支付服务端直接向网站发出的请求,通知地址必须是外部可访问的服务端接口;填成本机地址,或被登录验证拦截,网站就收不到结果。
如果服务器已收到通知,就保留请求记录,按接口文档验签,并核对通知中的商户号、订单号、金额和支付状态。只有这些信息与网站原订单吻合,才把订单改为已支付。金额应以服务端保存的订单数据为准,不能让用户在网页上改一个数后直接用于支付请求。
这次排查若发现通知根本没有到达,就检查后台填写的地址、服务器访问日志和接口响应。地址修正后,还要用测试订单重新走一遍付款与通知;此前那笔订单的状态,不能因为“用户说已付款”就直接改动,需通过服务商提供的订单查询方式核实。通知可能重复发送,更新订单时也要避免重复发货或重复开通权益。
正式上线前,把退款和异常订单留在流程里
测试环境跑通跳转,不代表正式环境配置已经一致。切换时核对商户号、密钥、接口地址和通知地址,确认服务器能接收请求,并按服务商要求返回处理结果。对用户取消支付、付款超时和通知延迟,页面保留可查询的订单状态,避免把暂时未收到通知直接显示为支付失败。
如果网站销售的是自动交付商品,订单改为已支付与实际交付之间还要留有记录,便于处理通知重复或交付中断。准备上线时,先用一笔测试订单核对网站订单、服务商订单和交付记录;对不上时,按订单号查清差异,再开放正式收款。

