2010-04-15 53 views
123

Vì vậy, câu hỏi này không phải là về việc tích hợp cổng thanh toán hiện tại vào trang web của tôi. Đây là một câu hỏi kiến ​​trúc.Tạo cổng thanh toán trực tuyến hoàn chỉnh như Paypal

Tôi muốn xây dựng một hệ thống tương tự như Paypal. Bây giờ tôi hiểu rằng Paypal cung cấp rất nhiều tính năng dưới mái nhà và tôi không thể thực hiện tất cả chúng cùng một lúc. Tôi muốn thực hiện chức năng cốt lõi của Paypal và các dịch vụ khác.

Vì vậy, câu hỏi của tôi là (thay vì thảo luận) về cách một người sẽ xây dựng một hệ thống như vậy. Một số điểm cần thảo luận:

  1. Xử lý thanh toán qua các ngân hàng hiện tại. Tôi đoán rằng tôi sẽ cần truy cập vào các giao thức ngân hàng địa phương để có được điều này.
  2. Cho phép người dùng lưu trữ và xử lý thanh toán an toàn
  3. Paypal xử lý các giao dịch như thế nào?

Suy nghĩ?

Trả lời

166

Điều bạn đang nói đến đang trở thành nhà cung cấp dịch vụ thanh toán. Tôi đã ở đó và làm điều đó. Nó dễ dàng hơn rất nhiều khoảng 10 năm trước hơn bây giờ, nhưng nếu bạn có một lượng thời gian, tiền bạc và sự kiên nhẫn phi thường, nó vẫn có thể là.

Bạn sẽ cần phải liên hệ với ngân hàng có được. Bạn đã không nói những gì khu vực của thế giới bạn đang ở, nhưng bằng cách này tôi không có nghĩa là một chi nhánh ngân hàng địa phương. Mỗi ngân hàng lớn nói chung sẽ có một nhánh mua thẻ riêng. Vì vậy, ở đây tại Vương quốc Anh, chúng tôi có (ví dụ) ngân hàng Natwest, sử dụng Streamline (hoặc Worldpay) làm chi nhánh có được. Tổng cộng mặc dù chúng tôi có điểm số của các ngân hàng lớn, tất cả họ đều sử dụng một trong năm người mua thẻ.

Hạnh phúc, tất cả những người thâu tóm thẻ ở Vương quốc Anh đều sử dụng giao thức chuẩn để liên lạc các yêu cầu cấp phép và kết thúc ngày giải quyết. Bạn sẽ tìm thấy những quirks nhỏ, nơi một số ngân hàng có được hỗ trợ một số tính năng và có cú pháp hơi khác nhau, nhưng sự khác biệt là khá nhỏ. Các tiêu chuẩn của Anh được xuất bản bởi Association for Payment Clearing Services (APACS) (hiện được biết đến với tên gọi UKPA). Các tiêu chuẩn này vẫn thường được gọi là APACS 30 (ủy quyền) và APACS 29 (giải quyết), nhưng bây giờ chính thức được gọi là APACS 70 (sách 1 đến 7).

Mặc dù tiêu chuẩn APACS được hỗ trợ rộng rãi trên khắp Vương quốc Anh (Amex và Discover chấp nhận thư ở định dạng này quá) không được sử dụng ở các quốc gia khác - mỗi quốc gia có riêng - ví dụ: Carte Bancaire ở Pháp, CartaSi ở Ý , Sistema 4B ở Tây Ban Nha, Dankort ở Đan Mạch, v.v.Một nỗ lực đang được tiến hành để thống nhất các giao thức trên khắp châu Âu - xem EPAS.org

Giao tiếp với ngân hàng có thể được thực hiện theo nhiều cách. Một lần nữa, nó sẽ phụ thuộc vào khu vực của bạn. Ở Anh (và hầu hết châu Âu), chúng tôi có một cổng giao tiếp cung cấp kết nối tới tất cả các nhà thu thập chính, được gọi là TNS và có hàng tá cách giao tiếp thông qua ngân hàng thu được, từ modem 9600 quay số, ISDN, HTTPS, VPN hoặc đường dây chuyên dụng. Cuối cùng, yêu cầu ủy quyền sẽ được chuyển đổi sang giao thức X25, là giao thức được các ngân hàng có được này sử dụng khi giao tiếp với nhau.

Tóm lại, tất cả phụ thuộc vào khu vực của bạn.

  • Liên hệ với ngân hàng lớn và cố gắng chuyển đến nhánh nhận thẻ của họ.
  • Giải thích rằng bạn đang thiết lập làm nhà cung cấp dịch vụ thanh toán và yêu cầu chi tiết về định dạng comm cho yêu cầu ủy quyền và tệp thanh toán cuối ngày
  • Thiết lập tài khoản người bán thử và phát triển phần mềm xác thực/giải quyết và thực hiện quá trình công nhận. Hầu hết những người thâu tóm giúp bạn vượt qua quy trình này miễn phí, nhưng khi bạn muốn đăng ký như một PSP được công nhận, một số người sẽ yêu cầu một khoản phí.
  • bạn sẽ cần phải tuân thủ một số quy định quá, ví dụ bạn có thể cần phải đăng ký như một tổ chức thanh toán

Một khi bạn đã được đăng ký và công nhận sau đó bạn sẽ có thể chấp nhận khách hàng và thiết lập tài khoản thương gia thay mặt cho ngân hàng/s bạn được công nhận chống lại (ghi nhớ rằng mỗi người thâu tóm nói chung sẽ hỗ trợ nhiều ngân hàng). Rửa sạch và lặp lại với những người thâu tóm khác khi bạn thấy cần thiết.

Ngoài ra, bạn còn gặp nhiều vấn đề khác, chủ yếu là giao tiếp với PCI-DSS. Đó là một chủ đề hoàn toàn khác và đã có một số q & của một trên trang web này liên quan đến điều đó. Giống như tôi nói, một công việc phi thường của nó - rất có thể là một dự án nhiều năm ngay cả đối với một nhóm có quy mô hợp lý, nhưng chắc chắn là có thể.

+1

Cảm ơn Paul là thông tin tuyệt vời. Đó chính xác là những gì tôi đang tìm kiếm. Một trong những khách hàng của chúng tôi đang tìm kiếm một giải pháp để thực hiện ở Nam Á. Chúng tôi không chắc chắn 100% do đó các câu hỏi về SO. – Obaid

+1

Cảm ơn @PaulG, tôi cũng đánh giá cao câu trả lời của bạn. Xin vui lòng cho tôi biết một điều. Cánh tay lấy thẻ là gì? Điều này có giống với tổ chức cung cấp bộ xử lý của ngân hàng Merchant. Bạn có thể cho tôi bất kỳ tham chiếu nào về điều đó không? –

+1

Giải thích tuyệt vời! Cảm ơn bạn! –

-7

Nhiệm vụ lớn, rất có thể là bạn không nên sáng tạo lại bánh xe thay vì sử dụng một bánh xe hiện có (chẳng hạn như paypal).

Tuy nhiên, nếu bạn nhấn mạnh vào việc tiếp tục. Bắt đầu nhỏ, bạn có thể sử dụng một cơ sở xử lý thẻ tín dụng (Moneris, Authorize.NET) để xử lý thẻ tín dụng. Hầu hết các nhà cung cấp đều có API mà bạn có thể sử dụng. Hãy cảnh giác rằng bạn có thể cần phải sử dụng các nhà cung cấp khác nhau tùy thuộc vào loại thẻ (Discover, Visa, Amex, Mastercard) và Quốc gia (Hoa Kỳ, Canada, Vương quốc Anh). Vì vậy, hãy xây dựng nó để bạn có thể giao tiếp với nhiều API xử lý thẻ tín dụng.

Bảo mật là điều cần thiết nếu bạn lưu trữ thẻ tín dụng và chi tiết thanh toán. Đảm bảo rằng bạn đang mã hóa mọi thứ đúng cách.

Một lần nữa, không phát minh lại bánh xe. Bạn nên sử dụng một nhà cung cấp hiện có và tập trung vào sự chú ý phát triển của bạn để giải quyết một vấn đề không thể dễ dàng mua được.

+9

Các công ty như Venmo đang giết ngay bây giờ. Vì vậy, nó là điên để nghĩ rằng bạn không thể làm cho một bánh xe tốt hơn chỉ vì một người như PayPal đã tồn tại. Ứng dụng di động mới nhất của PayPay trông giống như nó đã được thiết kế lại giống như Venmo. –

Các vấn đề liên quan