Thứ Tư, 29 tháng 8, 2012

Asp.Net - PayPal - Viết chức năng thanh toán bằng Credit Card


Hầu như bạn nào làm website thanh toán trực tuyến cũng điều biết đến dịch vụ thanh toán trực tuyến của PayPal, mà đa phần các bạn gặp khó khăn khi viết module thanh toán trực tuyến bằng Credit Card của PayPal, sau đây mình xin hướng dẫn các bạn viết module Thanh toán trực tuyến bằng Credit Card với PayPal một cách ngắn gọn và dễ làm.

A. TẠO TEST ACCOUNTS
A.1. PayPal đã xây dựng cho cho người viết web như chúng ta một môi trường để test thử module thanh toán trực tuyến trước khi chấp nhận cho chúng ta chạy thật, đó là PayPal Sandbox.


A.2. Đầu tiên các bạn vào PayPal Sandbox để tạo một tài khoản chính cho Developer, tài khoản này dùng để tạo ra các tài khoản test như Buyer hay Seller. Click vào button "Sign Up Now" hoặc vào trực tiếp link đăng ký: https://developer.paypal.com/devscr?cmd=_signup-run


Bạn nhập thông tin đây đủ và đăng ký một tài khoản ở đây nhé. Ah! bạn nhớ check mail của bạn và kích hoạt tài khoản này, nếu không là không dùng được đâu.

A.3. Sau khi có tài khoản chính và được kích hoạt rồi thì bạn đăng nhập vào PayPal Sandbox và tạo các tài khoản test.


Click vào phần "Test Accounts" và tạo ra 2 accounts, một là buyer và một là seller như hình trên để sử dụng cho việc thanh toán bằng API từ website ASP.NET

A.4. Chỉnh cho account Business seller_1265220099_biz@gmail.com chấp nhận thanh toán bằng APIs thông qua website của mình. Từ PayPal Sandbox này bạn chọn option của account seller_1265220099_biz@gmail.com và click "Enter Sandbox Test Site" để login vào account này. Sau đó nhìn cái box trên cùng bên phải của trang web, box có cái tiêu đề là "Getting Started", click vào link "Accept Billing..." và chọn "Accept PayPal payments before API permissions or credentials are set up".



Hoặc từ My Account bạn vào Profile > API Access, sau đó scroll xuống cuối trang và tìm đến dòng "Accept payments from your online stores before setting up APIs", phía dưới dòng này bạn click vào link "Enable Express Checkout to accept payments..." và chọn options chấp nhận thanh toán bằng APIs qua website.

A.5. Kế tiếp ta vào phần "API Credentials" để lấy thông tin API, dùng để đăng nhập khi chạy module thanh toán ở website ASP.NET


Bạn chú ý ghi lại 4 yếu tố: Test Account, API Username, API Password và Signature

B. TẠO WEBSITE ASP.NET ĐỂ TEST CREDIT CARD
B.1. Xem như phần chuẩn bị Test accounts và API đã xong, giờ chúng ta tạo một website ASP.NET để viết thử module thanh toán Credit Card. Ở phần này mình muốn các bạn download source code ví dụ về xem, mình chỉ trình bày một số điểm cần chú ý như sau:

Các bạn mở Visual Studio 2008 lên và tạo mới một website ASP.NET 2.0


B.2. Chúng ta cần sử dụng thư viện của PayPal, add nó vào bằng cách Click phải vào "Project Website và chọn "Add Web Reference"


Sau đó nhập vào URL là https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl trên cái window "Add Web Reference" mới mở lên, Click button "Go" và chờ khoảng 1 phút, khi nó tải xong thì click button "Add Reference"


B.3. Thêm một số API Account lúc này ghi lại vào section AppSettings của Web.config


B.4. Tạo 2 Class trong folder App_Code như sau: Vui lòng download source code ví dụ về xem
  • PayPalGateway.cs : dùng để thực hiện thanh toán(Pay) và lấy thông tin phiên giao dịch(GetTransactionDetail)
  • PayPalReturn.cs : dùng để nhận kết quả trả về từ PayPal Service.
B.5. Ở trang Default.aspx.cs ta viết thử một ví dụ để test thanh toán:
protected void btnCreditCard_Click(object sender, ImageClickEventArgs e)
    {
        PayPalGateway pp = new PayPalGateway();
        PayPalReturn rv = pp.Pay("123", "1", "Minh", "Phuong", "123 Nguyen Hue", "HCM", "CA", "US", "United States", "12345", "Visa", "4490701599080019", "027", "2", "2015");
        if (rv.IsSucess)
        {
            lblMsg.Text = "Your Invoice Number: " + rv.TransactionID;
        }
        else
        {
            lblMsg.Text = "Error process: " + rv.ErrorMessage;
        }
    }
B.6. Ở trang Default.aspx tớ thiết kế tạm như sau:


B.7. Bạn có thể chạy thử ví dụ, như hình trên thì đã thanh toán thành công. Trong tài khoản seller_1265220099_biz@gmail.com bạn có thể xem chi tiết các phiên giao dịch, đăng nhập tại địa chỉ: https://www.sandbox.paypal.com/


Hy vọng sẽ giúp ích cho các bạn đang tìm hiểu để viết module thanh toán trực tuyến bằng Credit Card của PayPal.Nguồn : http://thuvienit.com/aspnet--paypal--viet-chuc-nang-thanh-toan-bang-credit-card_topic14306.html

Không có nhận xét nào:

Đăng nhận xét