Java与Ipay88支付整合,已经在生产环境使用

准备资料
  1. 去Ipay88官网申请MerchantCode和MerchantKey这两个参数。
    MerchantCode: 商户code,用于发起支付
    MerchantKey: 商户key,用户签名使用
  2. 准备三个URL:
    Request URL: 签出页,发起支付请求的地址,必须是一个HTML页面地址,把相关参数通过Form表单提交给Ipay88
    Response URL: 用户发起支付后会跳转到Ipay88支付页面,用户支付过后会跳转到此页面。中途如果用户放弃支付或者支付失败都会请求此接口。Ipay88会携带一些参数给我们,我们可以判断是否成功,给前端返回一些内容等
    Backend URL: 支付回调地址。类似于支付宝,微信之类的
支付流程
  1. form表单提交下面的参数给Ipay88,发起支付

    参 数:
    MerchantCode 商户代码
    PaymentId 支付方式
    RefNo 订单编号(我理解的,方便与订单挂钩)
    Amount 支付金额(注意类似与1,912.00这种格式)
    Currency 货币
    ProdDesc 产品描述
    UserName 用户名
    UserEmail 用户邮箱
    UserContact 联系方式
    Remark 备注(非必传)
    Lang 编码方式,UTF-8
    SignatureType 加密方式SHA256
    Signature 加密串
    ResponseURL 支付后跳转URL
    BackendURL 支付后回调URL

  2. 我们网站跳转到Ipay88站点支付页面,用户输入相关银行卡信息进入下一步
  3. Ipay88跳转银行系统网站,输入相关信息进入下一步
  4. Ipay88获取银行网站返回的状态,得到支付结果并进入下一步
  5. 跳转到我们设置的Response URL,后台可以获取到Ipay88的支付状态,我们根据支付信息再次query订单是否支付成功,如果支付成功则更新订单跳转成功界面,否则跳转失败页面
  6. 结束
开始发起支付请求
  1. 准备提交给Ipay88的参数
     // Java后台准备的支付参数返回给前端
     Map<String, Object> map = new HashMap<>();
     map.put("MerchantCode", merchantCode); // Ipay88商户code
     map.put("PaymentId", PaymentId); // Ipay88支付渠道,我写的2就是马来西亚币
     map.put("RefNo", RefNo); // 相当于订单编号
     map.put("Amount", Amount); // 支付金额,1.00 两位小数,1,278.99 超过三位有逗号,哦
     map.put("Currency", "MYR");// 货币,我用的MYR
     map.put("ProdDesc", ProdDesc); // 产品介绍
     map.put("UserName", UserName); // 用户名
     map.put("UserEmail", UserEmail); // 用户邮箱
     map.put("UserContact", UserContact); // 用户联系方式
     map.put("Remark", Remark); 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值