Tích Hợp Thanh Toán Paypal Vào Website Php, Thanh Toán Bằng Paypal

Có lẽ mọi người đều không xa lạ với hệ thống thanh toán Paypal. Nhiều dịch vụ thanh toán quốc tế chấp nhận thanh toán qua Paypal, nó gần như là 1 phương thức thanh toán được thế giới chấp nhận. Việc tích hợp thanh toán để mua bán vào web là điều mọi người đều làm. Ở đây mình cùng các bạn tìm hiểu về việc sử dụng Paypal để thực hiện các công việc thanh toán:

Nạp tiền bằng thẻ thanh toán quốc tế.Thanh toán từ người dùng paypal.

Đang xem: Tích hợp thanh toán paypal vào website php

Đăng ký tài khoản develop

Cũng như làm việc với Facebook hay Google, thì để làm việc với Paypal thì cũng cần có tạo các App khác nhau để tạo ra các Key và Secret. Ngoài ra vì đây làm việc liên quan đến tiền vì thế rất cần các tài khoản Sandbox để có thể test việc sử dụng Api nó như thế nào.Khi có tài khoản Paypal ta có thể vào đây để đăng nhập vào develop của Paypal. Sau khi đăng nhập xong thì ta để ý menu bên trái như sau

*

Ta vào phần Sandbox > Account.Thường ở đây có sẵn 2 tài khoản nhưng theo kinh nghiệm bản thân thì bạn k nên dùng 2 tài khoản này, vì mình từng thử các API mà nó ko chạy khi sử dụng thông tin của 2 tài khoản này. Do vậy ta cần tạo tài khoản khác. Khi vào màn hình tạo tài khoản sẽ như sau

*

Lúc tạo tài khoản thì ở đây sẽ có 2 loại tài khoản: đó là PersonalBusiness. Hiểu nôm na là người mua và người bán.

*

Thực hiện giao dịch bằng thẻ Tín dụng

Để thực hiện giao dịch bằng thẻ tín dụng ta dùng phương thức DoDirectPayment của Paypal. Các thông số setup bao gồm:Endpoint là https://api-3t.sandbox.paypal.com/nvpUser: (lấy ở trên)Pass: (Lấy ở trên)Signature: (Lấy ở trên)Với mỗi tài khoản Personal đều có thông tin mã thẻ tín dụng để test.Vậy để các param để gửi đi sẽ là:

$curl = curl_init(); curl_setopt($curl, CURLOPT_VERBOSE, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($curl, CURLOPT_TIMEOUT, 30); curl_setopt($curl, CURLOPT_URL, $api_endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $nvp_string); // những thông tin trên được gửi qua Paypal và tôi sẽ nhận được phản hồi trong biến $result $result = curl_exec($curl); curl_close($curl);Và kết quả ta có được là:

*

Và để kiểm tra kết quả tiền thì ta có thể đăng nhập tài khoản sandbox từ link này để xem lịch sử giao dịch.

Xem thêm: Bà Đẻ Có Được Ăn Măng Không, Cho Con Bú ăN MäƒNg đưÁ»£C Không

Giao dịch nhận tiền từ tài khoản Paypal người khác vào

Phương thức thanh toán ở đây ta dùng là AdaptivePayments. Trình tự thanh toán của nó sẽ như sau:

Đầu tiên ta chạy API điền các thông số, sau đó sẽ trả về 1 paykey.Sau khi chấp nhận giao dịch thì paypal se redirect về link đã setup từ trước.

Xem thêm: Tự Học Php Cơ Bản – Học Lập Trình Php Căn Bản

Gửi API đến Paypal

Như phần nhận tiền từ thẻ tín dụng thì ta cần các thông số setup như sauEndpoint là https://svcs.sandbox.paypal.com/AdaptivePayments/PayUser: (lấy ở phần bussiness info)Pass: (lấy ở phần bussiness info)Signature: (lấy ở phần bussiness info)Và param sẽ như sau

$request_params = < "actionType" => “PAY”, “currencyCode” => “USD”, “receiverList” => < "receiver" => < < "amount" => “10.00”, “email” => ““, > >, >, “returnUrl” => “https://example.com/success.html”, //Link sẽ trả về nếu thanh toán thành công “cancelUrl” => “https://example.com/failure.html”, // Link trả về nếu giao dịch bị hủy “requestEnvelope” => < "errorLanguage" => “en_US”, “detailLevel” => “ReturnAll”, >, >;và thực thi như sau

$curl = curl_init(); curl_setopt($curl, CURLOPT_VERBOSE, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($curl, CURLOPT_TIMEOUT, 30); curl_setopt($curl, CURLOPT_URL, $api_endpoint); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_HTTPHEADER, $headerParams); curl_setopt($curl, CURLOPT_POSTFIELDS, $params); // những thông tin trên được gửi qua Paypal và tôi sẽ nhận được phản hồi trong biến $result $result = curl_exec($curl); curl_close($curl);Và kết quả trả về như sau

*

Xác thực thanh toán

Như ta đã nói ở trên, sau khi có Paykey thì ta cần vào linkhttps://www.sandbox.paypal.com/webscr?cmd=_ap-payment&paykey=AP-0R408975WV7261848để xác thực, nếu chấp nhận thanh toán thì Paypal sẽ redirect về link đã khai báo trong param.### Xác định trạng thái của Paykey ###Để biết thành quả của giao dịch thì Paypal có cung cấp API cho việc xác định trạng thái của Paykey là PaymentDetailshttps://svcs.sandbox.paypal.com/AdaptivePayments/PaymentDetails

Kêt luận

Trong bài viết là những giao dịch cơ bản. Ngoài ra paypal có cung cấp sẵn các thư viện ngoài cho Php còn có cho lập trình Android, iOs. Các bạn có thể tham khảo trên link github của paypal.

Leave a Comment

DMCA.com Protection Status