2014-08-29 39 views
1

我正在爲Sagepay創建一個內部支付網關。我有第一位工作正常,使用wp_remote_post發送我的請求,並得到一個確定的下一個網址,並將其放入一個iframe。我的問題在於處理響應。我總是把它移出iframe,然後進入test.sage.com來處理付款,然後出現5006錯誤代碼,即'無法重定向到供應商的網站。供應商未能提供重定向URL。'。我明白,我需要給sagepay如何告訴我它的涼爽與我的反應類似的反應,是這樣的:回覆sagepay(PHP)的通知郵件

Status=ok 
RedirectURL=http:// 

但我真搞不清楚我是怎麼傳達這一點。我試過了:

echo ' 
     Status=ok ' . PHP_EOL . ' 
     RedirectURL=https://url/sagepay/callbacks 
    '; 

但得到相同的錯誤。整合工具包似乎給出了一切減去內聯方法的例子。但只是很困惑我如何處理這個。

回答

2

確保您提供一個純文本頭..

header("Content-type: text/plain"); 

,並提供你這樣的迴應:

echo 'Status=OK' . chr(13) . chr(10) . 'RedirectURL=https://url/sagepay/callbacks' . chr(13) . chr(10); 

這是我送我到SagePay響應..它是重要的沒有任何空白之前和之後你的迴應..

+0

是啊我已經嘗試過類似的,這也。它正在移動到iframe之外,並在3D-Secure計劃之後進入https://test.sagepay.com/gateway/service/authorisation,這是否正常? – David 2014-08-29 14:03:07

+0

yeh它是iframe的一部分純粹是爲了最初的交易,給卡的細節等,然後打破iframe來敲定..這就是爲什麼我已經轉移到使用直接集成更多的控制 – 2014-08-29 14:07:21

+0

嗨,對不起在這段時間之後把這個備份帶回來,但已經回到了這個位置,仍然有點困惑。此代碼是否在您通過'NotificationURL'傳遞sagepay的頁面上?所以你只是有一個空白的PHP文件說上述代碼? – David 2014-09-24 14:49:42