paypalapi接口php,paypalapi開發文檔

本文目錄一覽:

用PHP開發Paypal支付接口~呢?

PayPal支付與支付寶微信支付等支付方式有所不同,具體可根據官方文檔開發。

首先在PayPal開發者平台註冊開發者賬戶,然後根據開發文檔接入即可。

paypal支付接口怎麼用

Paypal IPN接口開發小結最近終於搞定了該死的Paypal ipn,特地在此留下點東西備忘。所以paypal ipn(Instant Payment Notification),就是Paypal開發的一種能主動通知第三方賣家系統交易狀態的一種機制。IPN的原理很簡單,就是當產生了一個交易之後,交易狀態發生變化時,如用戶已經付款、或者退款、撤銷時,Paypal利用常用的HTTP POST方式,將交易的一些變量提交給網站的某個頁面(稱之為IPN Handler),當這個頁面接受到請求時候,將這些數據原封不動加上一個指示驗證的cmd=_notify-validate,POST回Paypal的接口地址,如果數據正確,那麼Paypal返回字符串VERIFIED,否則為INVALID,如果結果為VERIFIED,那麼你的程序就可以使用這些數據進行操作。但代碼的調試是一件很痛苦的事情,因為作為第三方開發人員,不可能開兩個帳號,每次測試還要之間交易一些錢,所以Paypal專門開發了Sandbox給開發人員進行開發,首先到 註冊一個開發帳號,好了之後再進入Sandbox建立測試用的Paypal虛擬帳號(至少應該建立一個Business的和一個Personal的),這種賬號註冊方法和Paypal的流程一樣,信息可以是假的,包括銀行帳號、信用卡(其實Paypal Sandbox會自動生成一些隨機的號碼)。接下來需要激活Paypal Sandbox的虛擬帳號,注意,這裡不管你在Paypal Sanbox註冊時填什麼郵件地址,有任何發送到虛擬帳號所填郵箱的郵件都存會在開發帳號的管理界面中的Email頁(導航欄上有)中。登錄Sandbox的虛擬Paypal環境,還需要驗證虛擬帳號的銀行,這裡可以隨便填,然後通過Add Funds來給賬戶充值(想填多少填多少)。然後,還需要激活IPN的選項,在Business的那個賬戶的Profile設置頁面中,點擊,然後點擊Edit按鈕,打開IPN,這裡如果你使用的是固定的IPN Handle,可以直接將地址填入。接下來,我們測試的時候,應該將Paypal接口的地址設置為 最後基本的流程為:用戶在我們的網站上選擇商品、放入購物車,然後檢查準備支付 網站根據購物車中的商品,生成Paypal的支付表單(也是提交到上面IPN用的Paypal接口地址),包含了此次交易的一些信息(下次會專門找機會解釋一下)。並在自己的數據庫中生成一張訂單記錄。 Paypal在Session中記錄下這些交易信息 用戶用Paypal賬戶登錄Paypal(Sandbox用Sandbox的虛擬帳號),複查明細,點擊Pay按鈕 Paypal進行交易處理,如果我們的Paypal收款帳號在接受帳款上沒有什麼問題(沒有特別的需要在界面上“Accept”的地方),交易完成,那麼Paypal會發送一個IPN,並發送提示郵件。 我們IPN Handler接受到信息,首先向Paypal進行校驗,如果信息正確,然後根據信息和自己數據庫中進行比對,如果無誤,可以將支付信息保存,並修改訂單狀態。 然後Paypal會顯示一個界面表示交易完成,此時如果用戶點擊“Return”按鈕,Paypal會將用戶送回我們網站指定地點。 我們網站迎接用戶回來,向用戶表示感謝,並進行提醒,給出訂單號等等。 整個流程基本如下,不過其中有很多要注意的地方:我們看到了,接口地址是https開頭的,也就是要求使用SSL進行連接,其實Paypal Sandbox可以使用http,但是最後實際的Paypal接口,不支持http協議,所以如果你用PHP寫IPN Handler腳本的話,在驗證信息的代碼部分,如果簡簡單單使用fopen、HTTP_Request之類的工具是沒用的,PHP的socks庫不支持SSL,應該使用curl,有兩種方法,一個是使用PHP擴展中的libcurl,Paypal官方發布的SDK中便是使用的這個方法,但Paypal的SDK非常複雜,如果想自己寫,可以使用Snoopy,一個簡單實用的PHP請求庫(它自己說是模擬了瀏覽器的行為),而它使用的是Curl的可執行文件,通過管道獲得結果,而非php的libcurl,所以自己cURL的主頁上下載一個支持SSL的編譯版本,可能還需要安裝OpenSSL,不過對於Linux系統,可能應該會都帶。 在支付表單中,可以自己設置notify_url字段,來指定此次交易的信息應該發送到哪個地方,這樣就可以覆蓋在Profile中我們的設置,另外,這個字段要進行urlencode。 我們得到的IPN信息中,status對應的便是交易狀態,如Complete表示完成,首字母大寫,而驗證結果則是VERIFIEY或者INVALID,全部大寫,具體的內容,可以查看Paypal官方的文檔訂單管理整合指南。

PHP開發Paypal支付,支付流程和接口實現方案

近期由於要開發公司外貿商城,需要對接Paypal支付。在開發過程中發現有好多坑。文檔都是英文文檔(主要還是自己英文水平不過關)、網上找的那些翻譯過的文檔老舊、沙箱環境網站卡的要讓人崩潰。整個過程真是讓人頭大,經過各種翻天覆地的百度、google、論壇終於功夫不負有心人跑通了。下面就結合網上的文檔給大家說說如何開發Paypal支付(一個Demo),避免大家在踩坑。

3.開啟PDT設置同步回調地址(這步拿到at_token return回調使用)

3.項目根目錄下創建return.php文件

4.項目根目錄下創建cancel.php文件

目前網上的文檔感覺沒有一個整體流程詳細的介紹,而且有些比較老。本篇文章是匯總整理並加入了一些自己的改造和踩坑分享而已。文介紹了paypal支付的其中一種方式,還有一種SDK的方式,這兩種有點小區別但是整體的流程還是一樣是。等後續會和大家分享另一種方式。還請各位大佬多多指教。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/155007.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-17 02:38
下一篇 2024-11-17 02:38

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • 使用Spire.PDF進行PDF文檔處理

    Spire.PDF是一款C#的PDF庫,它可以幫助開發者快速、簡便地處理PDF文檔。本篇文章將會介紹Spire.PDF庫的一些基本用法和常見功能。 一、PDF文檔創建 創建PDF文…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Java 監控接口返回信息報錯信息怎麼處理

    本文將從多個方面對 Java 監控接口返回信息報錯信息的處理方法進行詳細的闡述,其中包括如何捕獲異常、如何使用日誌輸出錯誤信息、以及如何通過異常處理機制解決報錯問題等等。以下是詳細…

    編程 2025-04-29
  • Python爬蟲文檔報告

    本文將從多個方面介紹Python爬蟲文檔的相關內容,包括:爬蟲基礎知識、爬蟲框架及常用庫、爬蟲實戰等。 一、爬蟲基礎知識 1、爬蟲的定義: 爬蟲是一種自動化程序,通過模擬人的行為在…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • Python生成PDF文檔

    Python是一門廣泛使用的高級編程語言,它可以應用於各種領域,包括Web開發、數據分析、人工智能等。在這些領域的應用中,有很多需要生成PDF文檔的需求。Python有很多第三方庫…

    編程 2025-04-28
  • Python接口自動化測試

    本文將從如下多個方面對Python編寫接口自動化進行詳細闡述,包括基本介紹、常用工具、測試框架、常見問題及解決方法 一、基本介紹 接口自動化測試是軟件測試中的一種自動化測試方式。通…

    編程 2025-04-27
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • Jadoor門鎖開發接口接入指南

    本文將從多個方面詳細介紹如何將門鎖接入Jadoor平台的開發接口,方便開發者們快速實現門鎖遠程控制、開鎖記錄查看等功能。 一、Jadoor門鎖開發接口簡介 Jadoor是一款用於密…

    編程 2025-04-27

發表回復

登錄後才能評論