paypal支付交易資料

2021-08-20 06:34:35 字數 3394 閱讀 1230

paypal支付交易成功後返回的物件中就有交易資訊(包括支付交易id,支付金額,支付人資訊,收款人資訊等),同時如果你開啟了訊息通知paypal會同時給你推送一條差不多內容的交易資訊。

支付成功返回資料:

我們在調paypal支付介面(execute)介面支付成功或者失敗paypal返回的資料。

id:為本次的資料id,唯一。

payer:付款人的資訊。

transations:支付交易資訊。

transations.amount:支付金額資訊,總價,稅費,運費等。

transations.item_list:商品資訊。

transations.shipping_address:收貨位址資訊。

transations.related_resources:裡面就是收款人的資訊。

transations.related_resources.state:這個狀態就是收款人的交易狀態,只要是completed就表示我們收到了錢,錢到賬了就什麼都好說了,交易成功。

}},

"transactions": [

},"description": "payment description",

"item_list": ,

],"shipping_address":

},"related_resources": [

,"payment_mode": "instant_transfer",

"state": "completed",

"protection_eligibility": "eligible",

"protection_eligibility_type": "item_not_received_eligible,unauthorized_payment_eligible",

"parent_payment": "pay-1bv5911839643144ykscua7q",

"links": [,,

]}}]

}],

"links": [

]}

同時伺服器會收到ipn訊息, 類似:

支付成功後paypal會同時往我們賣家賬號那裡配置的訊息通知url推送一條訊息資料,資料和支付成功大致一樣。

由於paypal推送訊息不止一次,正常情況下如果是 completed並且使用者收到資訊就不會再推了,如果推送失敗或者交易狀態發生改變,比如出現資金凍結,發起退款等事情的時候,paypal的就會有多次推送了,那麼我們要怎樣判斷是第一次推送還是多次推送呢?

檢視資料我們發現資料中有交易號txn_id,如果出現多次推送就會多出乙個屬性parent_txn_id,這個就是原始交易id,所以我們可以判斷有沒有這個屬性,這個屬性有沒有值來確定是第一次還是第二次推送。

array (

'act' => 'ipn',

'mc_gross' => '20.00',

'invoice' => '548531d624f59',

'protection_eligibility' => 'eligible',

'address_status' => 'unconfirmed',

'item_number1' => '',

'tax' => '1.30',

'item_number2' => '',

'payer_id' => 'jaryjk2tes6c6',

'address_street' => 'no 1 nan jin road',

'payment_date' => '21:04:35 dec 07, 2014 pst',

'payment_status' => 'completed',

'charset' => 'gb2312',

'address_zip' => '200000',

'mc_shipping' => '1.20',

'mc_handling' => '0.00',

'first_name' => 'test',

'mc_fee' => '0.98',

'address_country_code' => 'cn',

'address_name' => 'buyer test',

'notify_version' => '3.8',

'custom' => '',

'payer_status' => 'unverified',

'address_country' => 'china',

'num_cart_items' => '2',

'mc_handling1' => '0.00',

'mc_handling2' => '0.00',

'address_city' => 'shanghai',

'verify_sign' => 'aomrs5l2w2xlt2an.gasrazpcl-nacivh3pz0htrsbzzfcieqdpgrxsk',

'payer_email' => '[email protected]',

'mc_shipping1' => '0.00',

'mc_shipping2' => '0.00',

'tax1' => '0.00',

'tax2' => '0.00',

'txn_id' => '5cs19517sj894934r',

'payment_type' => 'instant',

'last_name' => 'buyer',

'address_state' => 'shanghai',

'item_name1' => 'ground coffee 40 oz',

'receiver_email' => '[email protected]',

'item_name2' => 'granola bars',

'payment_fee' => '0.98',

'quantity1' => '1',

'quantity2' => '5',

'receiver_id' => '937cp9psmds2a',

'txn_type' => 'cart',

'mc_gross_1' => '7.50',

'mc_currency' => 'usd',

'mc_gross_2' => '10.00',

'residence_country' => 'cn',

'test_ipn' => '1',

'transaction_subject' => '',

'payment_gross' => '20.00',

'ipn_track_id' => 'a9059421a1dd7',

)

支付之paypal支付

1.基本配置 1.1.設定sandbox 賬號,開啟登入 1.2 賬號設定買家和賣家,各設定乙個。賣家的郵箱位址放在下面的form表單裡的business 裡面,買家 測試支付的時候使用 1.3.配置paypal表單 1.form的action 為 是 沙箱配置,上線去掉sandbox即可2.如果配...

聊聊電商平台的支付交易系統

一 關於定位 下單 支付渠道閘道器 訂單管理 虛擬資金賬戶 營銷優惠等重要業務,是電商平台不可或缺的系統。在不同的業務發展階段,支付交易系統需要的架構和投入的人力也不大一樣。二 架構演進 1.初期 單核階段 在平台發展初期,業務相對比較簡單,業務量也很小,乙個系統就囊括了所有功能,很可能連部署都和其...

設定Paypal支付

paypal支付設定有很多種,這裡我們設定標準的paypal支付方式 website payments standard.假設你已經有了乙個paypal的賬號,比如為yummy gmail.com。步驟i.設定paypal賬號 進入system configuration paypal accoun...