2014-11-06 162 views
1

我正在一個網站上工作,我需要與Payza集成。從我讀的「立即購買」按鈕看起來像這樣:Payza「立即購買」按鈕

<form action="https://secure.payza.com/checkout" method="post"/> 
    <input type="hidden" name="ap_amount" value="50" /> 
    <input type="hidden" name="ap_purchasetype" value="item-goods" /> 
    <input type="hidden" name="ap_merchant" value="[email protected]" /> 
    <input type="hidden" name="ap_itemname" value="The Name" /> 
    <input type="hidden" name="ap_currency" value="USD" /> 
    <input type="image" name="ap_image" src="https://www.payza.com/images/payza-buy-now.png" /> 
</form> 

這是不安全的。 Payza是否提供任何API來保護我的按鈕(如Paypal的NVP),或者有什麼方法來保護我的服務器上的按鈕?

+0

你是什麼意思與「這是不安全的它使用HTTPS,所以問題出在哪裏 – 2014-11-06 11:08:58

+0

任何用戶都可以編輯HTML表單的例子:??對於項目費用爲50 $用戶可以設置價格$ 5 – 2014-11-06 11:13:20

回答

3

您在文章中的表單使用了所謂的「高級集成」。然而,大多數賣家/商家推薦的是「標準整合」。標準集成在大多數情況下都是有意義的,除非您有非常特殊的需求(更多關於高級集成)。

使用標準集成,您可以在Payza的會員區域創建按鈕,在此期間您可以定義所有參數(如金額等),然後爲您生成一個表單。

與高級集成表單不同,此表單不包含價格或任何其他信息。它只有一個參考ID,Payza系統將使用它來檢索您爲該按鈕設置的信息。這意味着用戶不能更改諸如金額等參數。所以我相信這實際上就是你要找的東西。

下面是一個標準的集成形式的外觀的例子,如:

<form method="post" action="https://secure.payza.com/checkout"> 
    <input type="hidden" name="ap_productid" value="jf3akAf34JasfkAFad4e3a==" /> 
    <input type="hidden" name="ap_quantity" value="1" /> 
    <input type="image" name="ap_image" src="https://secure.payza.com/PayNow/4A13EKMCI42KCIKAL34HZI34KL3LN1BOa9en.gif" /> 
</form> 

您可以找到有關標準的集成的信息頁這裏:


這是關於高級I的更多信息ntegration。

我們建議僅針對特定需求使用高級集成,即具有動態生成的按鈕,或者,例如,如果項目或服務的價格是動態確定的。 如果您選擇使用高級集成,系統檢查收到的付款信息(包括已付金額)至關重要。建議通過IPN處理程序進行檢查。欲瞭解更多信息,請參見下面的第一個頁面中的部分「高級按鈕安全& IPN」,第二頁有關於最佳實踐的信息:


也就是說,我們已經爲您提出的擔憂開了一張內部票據。

儘管高級集成是通過設計實現的,但我們將研究如何進一步改進此功能。

感謝您的留言。

+0

我也嘗試了標準集成和我收到的ipn監聽器:[偵聽器] /?ap_itemcode = 1&ap_itemname = National Geographic&ap_shippingcharges = 0.00&ap_additionalcharges = 0.00&ap_taxamount = 0.00&ap_discountamount = 0.00&ap_totalamount = 10.00&ap_ipnversion = 0&ap_feeamount = 0.0&ap_netamount = 0.0&ap_transactiontype = purchase我沒有關於交易號碼 的信息ap_alerturl = [ipn_listener]&ap_transactiondate = 2014-11-10 06:28:30 ap_status =成功 – 2014-11-10 11:38:45

+0

當我嘗試高級集成時,我發送這個http get請求:https:// secure。 payza.com/ipn2.ashx?token= 並且迴應是「無效標記」 – 2014-11-10 13:17:02

+0

我的錯誤。我不應該將http get請求發送到https://secure.payza.com/ipn2.ashx,因爲我正在沙盒中進行測試。什麼是正確的網址發回令牌 – 2014-11-10 14:01:34

2

在回答您的其他問題:

如果您的IPN的不包含參考號碼,我懷疑你正在使用我們的IPN模擬器。使用IPN模擬器,不會生成參考號碼,因爲沒有資金實際進行交易,因此不會在IPN數據中發送。此外,請注意,如果您的沙盒帳戶中啓用了測試模式,則不會爲測試模式事務生成IPN。

如果您正在使用我們的沙箱環境,您的IPN處理程序應將IPN令牌發送回以下URL:https://sandbox.payza.com/sandbox/ipn2.ashx。如果您繼續收到無效令牌,請檢查以下內容:

  1. 確保您有IPN V 2在您的沙盒帳戶中啓用。

  2. 檢查您的處理程序以確認您正在接收令牌。

  3. 查看您的IPN處理程序腳本以確保它正在接收令牌並在向我們發回字符串之前使用令牌字符串完成URL編碼。

有關IPN故障排除,請點擊以下鏈接瞭解更多信息:

檢查以上後,如果您繼續遇到困難,請向我們發送電子郵件提供簡要說明以及與您的沙箱帳戶相關聯的電子郵件地址,以便我們進一步調查。

+0

我禁用了商戶和客戶帳戶中的測試模式,並且仍然收到「無效令牌」。這是我收到的:token = Ol9iQHrpsqdMslcnMlJJyGayVDs5gWZbjNBjlkeRI0DQ5nASh8mj7u/u3amfn2Q2mLF0Aq4FhfipNO6DZCHXJA ==。當我調用urlEncode時,我發送的https發送請求的URL是:https://sandbox.payza.com/sandbox/ipn2.ashx?token=Ol9iQHrpsqdMslcnMlJJyGayVDs5gWZbjNBjlkeRI0DQ5nASh8mj7u/u3amfn2Q2mLF0Aq4FhfipNO6DZCHXJA==。 – 2014-11-11 08:33:29

+1

@PayzaIntegration歡迎來到SO!通常情況下,回覆評論中的其他問題時的傳統是編輯原始答案並添加到答案中(是的,確實有時候答案很長;沒關係)。爲了清楚起見,引用引發問題的評論也是典型的;它可以幫助未來的讀者使用上下文,評論也可以隨時刪除(導致混淆)。感謝您的帖子! – 2014-11-11 14:39:38

+1

嗨@JasonC,感謝您的指點,仍然在這裏學習繩索。 – PayzaIntegration 2014-11-12 14:45:30