Day08 永丰金API 建立订单交易

终於要进入成立订单的部份了,先看一下成立订单所需要的参数,

{
    "ShopNo":  "bank001" //永丰金提供的商店编号
    "OrderNo":  "202109141230" //店家自订订单编号
    "Amount": 888 //订单金额
    "CurrencyID":  "TWD" //币别 固定为twd
    "PrdtName":  "商品名称" //呈现於付款页面上面的商品名称
    "ReturnURL":  "user_back_url" //使用者付款完成後导向的页面
    "BackendURL":  "notify_url"  //付款完成通知server url
    "PayType":  "A" //付款方式 A: ATM付款, C: 信用卡付款
    "ATMParam" : { //atm付款才需设定
      "ExpireDate":  "20210914" //atm付款截止日期为设定日期的晚上23:59:59,格式Ymd
    }
    "CardParam": { //信用卡付款才需设定
      "ExpMinutes": 20 //信用卡付款连结失效时间,1-30分钟
   }
}

这边只列出常用控制项目,以及atm、信用卡付款常用设定项目,
一些银行请款相关设定都用预设,
以及要特别注意‘ATMParam’跟‘CardParam’,
是分别於atm付款及信用卡刷卡才会特别出现的参数,
然後把这些资料利用我们前几天封装好的函式进行测试,
apiService的组成可看Day7 永丰金API 基础流程 -- 整理

$data; //上面上串资料
//记得设定order_api_url及nonce_api_url
$service =  "OrderCreate"; //服务名称
echo apiService($service, $data);

//response 信用卡
{
	"OrderNo": "店家自订订单号",
	"ShopNo": "商店店号",
	"TSNo": "永丰金订单号",
	"Amount": 50000,
	"Status": "S", //S:正常 F:失败
	"Description": "S0000 – 处理成功",
	"PayType": "C",
	"CardParam": {
		"CardPayURL": "信用卡付款网址"
	}
}

//response atm
{
	"OrderNo": "店家自订订单号",
	"ShopNo": "商店店号",
	"TSNo": "永丰金订单号",
	"Amount": 50000,
	"Status": "S", //S:正常 F:失败
	"Description": "S0000 – 处理成功",
	"PayType": "A",
	"ATMParam": {
		"AtmPayNo": "atm汇款帐号",
		"WebAtmURL": "web atm汇款url",
		"OtpURL": "简讯动态密码otp付款 url"
	}
}

这边拿到response之後,在导向到对应的付款页面,
信用卡导向到CardParam->CardPayURL,
ATM有几个操作,首先是有直接提供汇款帐号的,所以是可以直接呈现在网站上,
让使用者自行汇款,或者导向service或OtpURL进行线上付款,
依照目前大环境来说,我个人是偏好直接显示汇款帐号,
让使用者自行选择现场汇款或者线上转帐。

至於如果status为失败,有太多种情况,
一步步依照提示的错误讯息进行debug即可,
比较容易出现的错误有json跟array的转换,以及url多斜线/的情况,
稍微注意一下即可。


<<:  使相机看着目标

>>:  Day14 Lab 2 - Object storage data层和心跳

Sklearn读取自定的CSV k-means范例修改

数据集的使用,常常令人一头雾水,举例来说,iris dataset这个最常用的资料集。 用一行代码就...

D9. 学习基础C、C++语言

D9: while跟 do-while的差别 我原本一直以为do-while是要判断式成立时才会执行...

[Day18] Vite 出小蜜蜂~ 位置校正 Position Adjustment!

Day18 接下来再进到分数系统之前, 卡比要先进行位置的校正,使我们更接近原作。 Enemy 首先...

【Day 12】- 这页爬完了,爬下一页。PTT 爬好爬满!(实战 PTT 爬虫 2/3)

前情提要 前一篇文章带大家写了能爬取 PTT 当前页面文章的爬虫,且透过携带已满 18 岁的 coo...

Day 26: Insertion sort & Selection sort

我们先来用insertion sort algorithm来解题。 虽然他的效率也不高,但这是很好理...