Code php respon từ VietQR
Transaction Sync (Nhận Biến Động Số Dư)
Code php respon trả về khi nhận được callback từ VietQR
/**
* -----------------------------------------
* Transaction Sync (Nhận Biến Động Số Dư VietQr.vn|VietQR.com - 0922333636)
* -----------------------------------------
*/
public function topup_transaction_sync()
{
$response = [];
$validate_token = $this->authorization_token->validateToken();
if ($validate_token['status'] == FALSE) {
$response['error'] = false;
$response['errorReason'] = $validate_token['message'];
$response['toastMessage'] = '';
$response['object'] = array(
'reftransactionid' => ''
);
} else {
$input_data = file_get_contents('php://input');
$input_data = (array)json_decode($input_data);
$orderId = $input_data['orderId'] ? $input_data['orderId'] : 0;
$transactionid = $input_data['transactionid'];
$transactiontime = $input_data['transactiontime'];
$referencenumber = $input_data['referencenumber'];
$amount = $input_data['amount'];
$content = $input_data['content'];
$bankaccount = $input_data['bankaccount'];
$transType = $input_data['transType'];
// Ghi log VietQR VN
$data = array(
'agent_id' => $orderId,
'transactionid' => $transactionid,
'transactiontime' => $transactiontime,
'referencenumber' => $referencenumber,
'amount' => $amount,
'content' => $content,
'bankaccount' => $bankaccount,
'transType' => $transType,
'orderId' => $orderId,
'date_add' => date('Y-m-d H:i:s', time())
);
$this->db->insert($this->agent_model->tbl_topup_vietqr_log, $data);
// Lấy thông tin đại lý
$agent = $this->agent_model->obj($data['agent_id']);
if ($agent) {
// Cộng topup
$this->db->update($this->agent_model->tbl, array(
'topup_amount' => $agent->topup_amount + $data['amount']
), array(
'id' => $agent->id
));
// Lưu log topup
$data_topup_log = array(
'agent_id' => $agent->id,
'amount' => $data['amount'],
'date_add' => date('Y-m-d H:i:s', time()),
'status' => 'plus',
'note' => $data['content'],
'source' => 'vietqr'
);
$this->db->insert($this->agent_model->tbl_topup_log, $data_topup_log);
}
// Response
$response['error'] = true;
$response['errorReason'] = 'Ok';
$response['toastMessage'] = '';
$response['object'] = array(
'reftransactionid' => ''
);
}
die(json_encode($response));
}
Last updated