iT邦幫忙

2021 iThome 鐵人賽

DAY 20
0
永豐金融APIs

掌握訂單與線上金流的剪不斷理還亂系列 第 20

Day20 訂單金流 -- 基礎結構

從一開始的api流程到後面購物車以及訂單,
今天我們終於又要將快要忘掉的金流給提起拉!!

首先讓我們看一下訂單這次又新增了什麼東西呢

Schema::create('order', function (Blueprint $table) {
    $table->string('id', 30)->comment('訂單id');
    $table->string('name', 30)->comment('購買人姓名');
    $table->integer('amount')->default(0)->comment('總金額');
    $table->string('payment_id, 30')->nullable()->comment('金流單id');
    $table->dateTime('payment_at')->nullable()->comment('付款時間');
    $table->text('payment_info')->nullable()->comment('付款資料');
    $table->string('status', 20)->default('unpaid')->comment('訂單狀態');
    $table->primary(['id']);
 });

主要新增三個欄位
金流單id
付款時間
付款資料

付款時間跟付款資料相對比較沒什麼特別好說的,
就是接收到永豐金通知 --Day10 永豐金API 訂單通知服務 的時候,
將對應的時間以及整包資料存入做備存即可,
至於金流單id的部份作法比較多種,有跟訂單id用一樣的,
也有額外建立的,還有用第三方單號的(永豐金為TSNo欄位),
各有優缺點我們之後可能會提到,這邊就先略過。

我個人做常用的是額外建立一組新的,
也就是除了訂單id之外在產一組payment_id做為Day08 永豐金API 建立訂單交易
的OrderNo使用,到這邊整個建立訂單並且導向金流付款的流程大致上就都跑完了,
看一下簡易流程圖
https://ithelp.ithome.com.tw/upload/images/20210926/20118647LsthzMzfRJ.png

最後記得Day10 永豐金API 訂單通知服務的部份一定要做,
不然就會被照三餐問候,問你家人後姆後,
今天就用三押作為ending, see you.


上一篇
Day19 訂單 -- 寫入訂單
下一篇
Day21 訂單金流 -- 獨立資料
系列文
掌握訂單與線上金流的剪不斷理還亂30

尚未有邦友留言

立即登入留言