第三方支付平台--网银在线

发送数据





新建网页









接收第三方响应处理

             订单编号	v_oid	商户发送的v_oid定单编号。
// 					  string(15) "sn54673adf48247"
// 					  ["v_pstatus"]=>    支付状态	v_pstatus	20(表示支付成功) 30(表示支付失败)
// 					  string(2) "20"
// 					  ["v_pstring"]=>    支付结果信息	v_pstring	支付完成
// 					  string(12) "支付完成"
// 					  ["v_pmode"]=>      支付银行	v_pmode	支付银行,例如工商银行
// 					  string(12) "工商银行"
// 					  ["v_md5str"]=>     订单MD5校验码	v_md5str
// 					  string(32) "F6291971A44A26E054B24960C83AE0CA"
// 					  ["v_amount"]=>     订单总金额	v_amount	订单实际支付金额
// 					  string(4) "12.9"
// 					  ["v_moneytype"]=>   币种	v_moneytype	订单实际支付币种
// 					  string(3) "CNY"
// 					  ["remark1"]=>      备注1
// 					  string(0) ""
// 					  ["remark2"]=>		备注2
// 					  string(0) ""
// 					}

$v_oid     =trim($_POST['v_oid']);       // 商户发送的v_oid定单编号
$v_pmode   =trim($_POST['v_pmode']);    // 支付方式(字符串)
$v_pstatus =trim($_POST['v_pstatus']);   //  支付状态 :20(支付成功);30(支付失败)
$v_pstring =trim($_POST['v_pstring']);   // 支付结果信息 : 支付完成(当v_pstatus=20时);失败原因(当v_pstatus=30时,字符串);
$v_amount  =trim($_POST['v_amount']);     // 订单实际支付金额
$v_moneytype  =trim($_POST['v_moneytype']); //订单实际支付币种
$remark1   =trim($_POST['remark1' ]);      //备注字段1
$remark2   =trim($_POST['remark2' ]);     //备注字段2
$v_md5str  =trim($_POST['v_md5str' ]);   //拼凑后的MD5校验值
$key = '#(%#WU)(UFGDKJGNDFG';//密钥,第三方支付平台提供的密码

/**
 * 重新计算md5的值
 */
 
$md5string=strtoupper(md5($v_oid.$v_pstatus.$v_amount.$v_moneytype.$key));

/**
 * 判断返回信息,如果支付成功,并且支付结果可信,则做进一步的处理
 */


if ($v_md5str==$md5string)
{
	if($v_pstatus=="20")
	{
		echo "OK";
		//支付成功,可进行逻辑处理!
		//商户系统的逻辑处理(例如判断金额,判断支付状态,更新订单状态等等)......

	}else{
		echo "支付失败";
	}
}else{
	echo "信息被篡改,不是原服务器信息"
}


你可能感兴趣的:(第三方支付平台--网银在线)