最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Paypal支付不完全指北

 更新時(shí)間:2020年06月04日 14:25:29   作者:瘋子蟈蟈  
這篇文章主要介紹了Paypal支付不完全指北,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

啥都不說,先吐槽

Paypal 真心坑爹,跟國內(nèi)支付完全沒法比,能不接入就不接入吧?。?!

準(zhǔn)備工作

重要事情

Paypal下單支付后,需要主動(dòng)跟paypal確認(rèn)收款(capture),否則該筆訂單并不是完成狀態(tài)!?。?/p>

賬號(hào)

自己前往Paypal develop注冊(cè)一個(gè)吧,注意區(qū)分沙箱(sandbox)和正式(live)賬號(hào)即可。
用沙盒賬號(hào)開發(fā),還可以創(chuàng)建多個(gè)沙盒的paypal賬號(hào),可以用于沙盒測(cè)試支付。

下單方式

跟國內(nèi)的支付寶和微信有區(qū)別,paypal可以直接在客戶端下單。

支持客服端、服務(wù)端下單。各有利弊,看具體需求來定咯

  • 客服端下單,可以調(diào)起Paypal APP(ios 和 android), 缺點(diǎn)是服務(wù)端無法及時(shí)知曉下單過程,需要客戶端及時(shí)通知
  • 服務(wù)端或者webhooks服務(wù)端下單,只能打開paypal 網(wǎng)頁支付。

無論何種下單,paypal 都沒有采用加密機(jī)制,全部都是明文,所以在檢校訂單信息時(shí)需要格外注意

客戶端下單

  • JavaScript
  • ios sdk
  • android sdk

客服端直接下單,需要保證客服端接收到的訂單信息時(shí)準(zhǔn)確的(最好后端加密訂單信息,客戶端解密并檢驗(yàn)數(shù)據(jù)完整性)

JavaScript

JavaScript直接接入,是通過paypal js直接生成一個(gè)iframe用于支付。
其中需要注意的是,paypal生成的按鈕只有幾個(gè)基本樣式可選,無法直接自定義樣式(我是沒有找到相關(guān)文檔,不排除可以自定義的可能。如果有麻煩也告訴下我)。

使用方式

// 如果默認(rèn)貨幣不是美元,需要在后面添加貨幣參數(shù)
<script src="https://www.paypal.com/sdk/js?client-id=sb"></script> 
paypal.Buttons({
createOrder: function(data, actions) {
 // This function sets up the details of the transaction, including the amount and line item details.
 return actions.order.create({
  purchase_units: [{
   amount: {
    value: '0.01'
   }
  }]
 });
},
onApprove: function(data, actions) {},
onCancel: function(){},
onError: function(){}
}).render('#paypal-button-container');

雖然目前無法自定義按鈕,但是我們可以是paypal生成的按鈕隱藏,用自己的按鈕蓋住,然后是設(shè)置css屬性pointer-events:none;來屏蔽事件即可。

Ios || android

Ios 和 andorid 的接入方式與JavaScript類似,只要引入相應(yīng)的SDK,非常簡單的就可以下單。SDK quickstart

服務(wù)端下單(推薦)

因?yàn)閜aypal沒有采用加密機(jī)制,同時(shí)在弱網(wǎng)情況下無法保證客戶端可以及時(shí)通知服務(wù)端訂單狀態(tài)的改變,選用服務(wù)端下單是相對(duì)安全的。

建議在下單時(shí),發(fā)送完整的訂單金額信息,paypal會(huì)對(duì)相關(guān)金額做檢校,如果更方面金額不一致(總價(jià) !== 運(yùn)費(fèi)+稅費(fèi)+商品數(shù)量 * 商品單價(jià)+…… ),是不能下單的。同時(shí)也可以讓買家確認(rèn)該筆訂單的明細(xì),用戶體驗(yàn)和安全性都有提高。

順便吐槽下paypal的沙盒環(huán)境,如果你請(qǐng)求超時(shí),請(qǐng)不要見怪,這不是你的問題,是沙盒環(huán)境太爛。(PS:不知道是不是與服務(wù)端語言相關(guān),PHP和nodejs對(duì)接paypal,性能差別很大,同一時(shí)間,同一個(gè)沙盒賬號(hào),nodejs請(qǐng)求基本保持在5s以內(nèi),php在15s左右)

基本下單參數(shù)

{
  "intent": "CAPTURE",
  "purchase_units": [
    {
      "reference_id": "order_id",
      // 總價(jià)
      "amount": {
        "value": "200",
        "currency_code": "RMB"
      },
      // 價(jià)格明細(xì)
      "breakdown": {
        // 商品總價(jià)
        "item_total": {
          "value": "180",
          "currency_code": "RMB"
        },
        // 運(yùn)費(fèi)
        "shipping": {
          "value": "20",
          "currency_code": "RMB"
        }
        // …… 還有稅費(fèi)之類的
      },
      // 商品明細(xì)
      "items": [
        {
          "name": "goods",
          "unit_amount": {
            "value": "90",
            "currency_code": "RMB"
          },
          "quantity": 2,// 數(shù)量
          "sku": "sku"
        }
      ]
      //...地址之類的其他參數(shù)
    }
  ],
  "application_context": {
    "cancel_url": "",
    "return_url": ""
  }
}

支付時(shí)序圖


高清在線圖片

再次強(qiáng)調(diào): Paypal下單支付后,需要主動(dòng)跟paypal確認(rèn)收款(capture),否則該筆訂單并不是完成狀態(tài)!!

notify

支付回調(diào)可以通過IPN或者webhooks,基本和國內(nèi)支付沒有什么區(qū)別,唯一區(qū)別是paypal通知沒有加密,收到回調(diào)需要服務(wù)端主動(dòng)跟paypal確認(rèn)信息是否正確

相關(guān)鏈接

PayPal Checkout
PayPal integrate doc
PayPal SDK quickstart
point-events

到此這篇關(guān)于Paypal支付不完全指北的文章就介紹到這了,更多相關(guān)Paypal支付內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 微信小程序開發(fā)(二):頁面跳轉(zhuǎn)并傳參操作示例

    微信小程序開發(fā)(二):頁面跳轉(zhuǎn)并傳參操作示例

    這篇文章主要介紹了微信小程序開發(fā)頁面跳轉(zhuǎn)并傳參操作,結(jié)合實(shí)例形式詳細(xì)分析了微信小程序頁面跳轉(zhuǎn)并傳參相關(guān)操作技巧,需要的朋友可以參考下
    2020-06-06
  • js遍歷對(duì)象key和value實(shí)戰(zhàn)舉例

    js遍歷對(duì)象key和value實(shí)戰(zhàn)舉例

    這篇文章主要給大家介紹了關(guān)于js遍歷對(duì)象key和value的相關(guān)資料,隨著JavaScript在web應(yīng)用程序中的廣泛使用,遍歷對(duì)象的key和value成為了編寫復(fù)雜代碼所必需的技能,需要的朋友可以參考下
    2023-07-07
  • Javascript中的delete介紹

    Javascript中的delete介紹

    關(guān)于JavaScript中的Delete一直沒有弄的很清楚,最近看到兩篇這方面的文章,現(xiàn)對(duì)兩文中部分內(nèi)容進(jìn)行翻譯(內(nèi)容有修改和添加,順序不完全一致,有興趣推薦看原文),希望能對(duì)大家有所幫助
    2012-09-09
  • 利用騰訊的ip地址庫做ip物理地址定位

    利用騰訊的ip地址庫做ip物理地址定位

    騰訊的這個(gè)還是相對(duì)比較準(zhǔn)確的。因?yàn)轵v訊每個(gè)QQ用戶發(fā)現(xiàn)自己匹配的地理位置信息不準(zhǔn)確都可以提交更正的
    2010-07-07
  • JavaScript適配器模式詳解

    JavaScript適配器模式詳解

    這篇文章主要為大家詳細(xì)介紹了JavaScript適配器模式的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • JS頁面延遲執(zhí)行一些方法(整理)

    JS頁面延遲執(zhí)行一些方法(整理)

    一般在JS頁面延遲執(zhí)行一些方法,本文整理了一些,大家可以嘗試操作下
    2013-11-11
  • 通過JavaScript控制字體大小的代碼

    通過JavaScript控制字體大小的代碼

    這個(gè)腳本會(huì)改變一個(gè)段落內(nèi)的任何文字的字體大小(<P>標(biāo)簽)。如果你想改變其他標(biāo)簽內(nèi)的文本編輯的getElementsByTagName("P");的一部分。
    2011-10-10
  • Bootstrap基本組件學(xué)習(xí)筆記之面板(14)

    Bootstrap基本組件學(xué)習(xí)筆記之面板(14)

    這篇文章主要為大家詳細(xì)介紹了Bootstrap基本組件學(xué)習(xí)筆記之面板,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Javascript isArray 數(shù)組類型檢測(cè)函數(shù)

    Javascript isArray 數(shù)組類型檢測(cè)函數(shù)

    在日常開發(fā)中,我們經(jīng)常需要判斷某個(gè)對(duì)象是否是數(shù)組類型的,在js中檢測(cè)對(duì)象類型的常見的方法有幾種.
    2009-10-10
  • 淺談JS繼承_寄生式繼承 & 寄生組合式繼承

    淺談JS繼承_寄生式繼承 & 寄生組合式繼承

    下面小編就為大家?guī)硪黄獪\談JS繼承_寄生式繼承 & 寄生組合式繼承。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-08-08

最新評(píng)論

英德市| 台北市| 济南市| 洛浦县| 南昌市| 夏邑县| 鸡泽县| 渝北区| 眉山市| 宁津县| 历史| 临邑县| 台山市| 黑水县| 双峰县| 郁南县| 宜宾县| 友谊县| 芷江| 永宁县| 综艺| 南宁市| 康定县| 通城县| 普洱| 驻马店市| 滦南县| 新建县| 广元市| 富蕴县| 武强县| 鱼台县| 房山区| 沁水县| 平和县| 墨玉县| 深水埗区| 青阳县| 嘉荫县| 河间市| 永川市|