我正在构建一个脚本以通过 HTML POST 将数据发送到 WorldPay。这一切都很好,除非付款已处理,它不会重定向回客户的网站。
我已将返回 URL 添加到管理系统中的支付响应 URL 中,并将 MC_callback 值添加到 HTML 表单中。
$call_back_url = HTTP_ROOT."/checkout_result/?order_id=".$_order->order_id;
$data = array(
"instId" => "1009258",
"cartId" => $_settings['shop_name']. " Order ID ".$_order->order_id,
"currency" => "GBP",
"testMode" => "100",
"name" => $_order->first_name . " " . $_order->surname,
"email" => $_order->email,
"address1" => $_order->billing_address_1,
"address2" => $_order->billing_address_2,
"address3" => $_order->billing_address_3,
"town" => $_order->billing_town_city,
"postcode" => $_order->billing_postcode,
"country" => $_order->billing_country,
"tel" => $_order->tel,
"amount" => $_order->paid,
"desc" => $_settings['shop_name']. " Order ID ".$_order->order_id,
"MC_callback" => $call_back_url,
);
?>
<div style="display: none;">
<form action="https://secure-test.worldpay.com/wcc/purchase" method="POST" id="submit_worldpay" />
<?php foreach($data as $key => $value){ ?>
<input type="hidden" name="<?php echo $key; ?>" value="<?php echo $value; ?>">
<?php } ?>
<fieldset class="submit">
<input type="submit" value="Confirm your purchase" />
</fieldset>
</form>
</div>
<script type="text/javascript">
document.getElementById('submit_worldpay').submit(); // SUBMIT FORM
</script>
我在 WorldPay 的网站上收到以下消息:
这不是实时交易。没有钱易手。谢谢,您的付款成功了。商户参考:My Store Order ID 823 WorldPay Transaction ID:{号码在这儿,但我隐藏了}