Tworzenie kompletnej bramki płatności online, takiej jak Paypal [zamknięte]

160

Więc to pytanie nie dotyczy integracji istniejącej bramki płatności z moją witryną. To bardziej kwestia architektoniczna.

Chcę zbudować system podobny do Paypal. Teraz rozumiem, że Paypal oferuje wiele funkcji pod dachem i nie mogę zaimplementować ich wszystkich na raz. Chcę zaimplementować podstawową funkcjonalność Paypal i innych tego typu usług.

Moje pytanie brzmi (raczej dyskusja) wokół tego, jak można by zbudować taki system. Kilka punktów do omówienia:

  1. Obsługuj płatności za pośrednictwem istniejących banków. Zgaduję, że potrzebowałbym dostępu do protokołów lokalnych banków, aby to uzyskać.
  2. Pozwól użytkownikom bezpiecznie przechowywać i przetwarzać swoje płatności
  3. W jaki sposób Paypal obsługuje transakcje?

Myśli?

Obaid
źródło
2
to pytanie było często głosowane. Zastanawiam się, czy obecnie trudniej jest znaleźć białe księgi itp., ponieważ platformy te nie chcą, aby te informacje były łatwo dostępne.
filthy_wizard
^ bardzo prawda. Widziałem wiele wspaniałych pytań, niestety zniechęconych
Ralph Dingus

Odpowiedzi:

214

To, o czym mówisz, to zostanie dostawcą usług płatniczych. Byłem tam i to zrobiłem. Około 10 lat temu było to o wiele łatwiejsze niż obecnie, ale jeśli masz fenomenalną ilość czasu, pieniędzy i cierpliwości, nadal jest to możliwe .

Będziesz musiał skontaktować się z bankiem autoryzacyjnym. Nie powiedziałeś, w jakim regionie świata się znajdujesz, ale nie mam tu na myśli lokalnego oddziału banku. Każdy większy bank ma na ogół oddzielne ramię autoryzacji kart. Tak więc w Wielkiej Brytanii mamy (np.) Bank Natwest , który wykorzystuje Streamline (lub Worldpay) jako narzędzie autoryzacyjne. W sumie, mimo że mamy dziesiątki dużych banków, wszystkie one używają jednego z około pięciu agentów rozliczeniowych.

Na szczęście wszyscy agenci rozliczeń kart w Wielkiej Brytanii używają standardowego protokołu do przesyłania żądań autoryzacji i rozliczenia na koniec dnia. Znajdziesz drobne dziwactwa, w których niektóre banki autoryzujące obsługują niektóre funkcje i mają nieco inną składnię, ale różnice są dość niewielkie. Standardy brytyjskie są publikowane przez Association for Payment Clearing Services (APACS) (obecnie znane jako UKPA). Standardy są nadal powszechnie określane jako APACS 30 (autoryzacja) i APACS 29 (rozliczenie), ale obecnie są one formalnie znane jako APACS 70 (książki od 1 do 7).

Chociaż standard APACS jest szeroko obsługiwany w Wielkiej Brytanii (Amex i Discover akceptują również wiadomości w tym formacie), nie jest używany w innych krajach - każdy kraj ma swój własny - na przykład: Carte Bancaire we Francji, CartaSi we Włoszech, Sistema 4B we Hiszpania, Dankort w Danii itp. Trwają prace nad ujednoliceniem protokołów w całej Europie - patrz EPAS.org

Komunikowanie się z bankiem przejmującym może odbywać się na kilka sposobów. Jednak znowu będzie to zależeć od twojego regionu. W Wielkiej Brytanii (i większości Europy) mamy jedną bramę komunikacyjną, która zapewnia łączność wszystkim głównym agentom rozliczeniowym, nazywają się TNS i istnieją dziesiątki sposobów komunikacji za ich pośrednictwem z bankiem przejmującym, od modemów dialup 9600 bodów, ISDN, HTTPS, VPN lub linia dedykowana. Ostatecznie żądanie autoryzacji zostanie przekonwertowane na protokół X25, który jest protokołem używanym przez te banki przejmujące do komunikacji między sobą.

Podsumowując: wszystko zależy od regionu.

  • Skontaktuj się z dużym bankiem i spróbuj połączyć się z jego oddziałem obsługującym karty.
  • Wyjaśnij, że konfigurujesz się jako dostawca usług płatniczych, i poproś o szczegóły dotyczące formatu komunikacji dla wniosków o autoryzację i plików rozliczeniowych na koniec dnia
  • Skonfiguruj testowe konto handlowca i opracuj oprogramowanie uwierzytelniające / rozliczeniowe i przejdź przez proces akredytacji. Większość agentów rozliczeniowych pomaga w tym procesie bezpłatnie, ale jeśli chcesz zarejestrować się jako akredytowany dostawca usług płatniczych, niektórzy zażądają opłaty.
  • będziesz musiał również przestrzegać niektórych przepisów, na przykład może być konieczne zarejestrowanie się jako instytucja płatnicza

Po zarejestrowaniu się i akredytacji będziesz mógł przyjmować klientów i zakładać konta handlowe w imieniu banku / banków, w których jesteś akredytowany (pamiętaj, że każdy agent rozliczeniowy będzie zazwyczaj obsługiwał wiele banków). W razie potrzeby opłucz i powtórz z innymi nabywcami.

Poza tym masz wiele innych problemów, głównie dotyczących PCI-DSS. To zupełnie inny temat i na tej stronie jest już kilka pytań i odpowiedzi na ten temat. Jak mówię, to fenomenalne przedsięwzięcie - najprawdopodobniej wieloletni projekt nawet dla rozsądnego zespołu, ale z pewnością jest możliwy.

PaulG
źródło
1
Dzięki Paul, to świetna informacja. Dokładnie tego szukałem. Jeden z naszych klientów szuka rozwiązania do wdrożenia w Azji Południowej. Nie byliśmy w 100% pewni, stąd pytania dotyczące SO.
Obaid
1
Dziękuję @PaulG, doceniam również twoją odpowiedź. Proszę, daj mi znać jedną rzecz. Co to jest ramię pobierające karty? Czy to samo dotyczy organizacji, która zapewnia podmiot przetwarzający bank handlowca. Czy możesz podać mi jakieś referencje na ten temat?
Frank Myat czw.,
Cześć Paul i @Obaid. Próbuję zbudować własną bramkę płatności. Jednak buduję go wokół kryptowaluty i nie mam do czynienia z bankami. Infrastruktura do transferu środków jest gotowa, ale chcę wiedzieć, jak radzić sobie z kwestiami bezpieczeństwa i które punkty należy wziąć pod uwagę, robiąc to. Zrobiłeś to? Czy możesz mi pomóc, którymi sprawami powinienem się zająć? Nie ma zbyt wielu zasobów w Internecie, aby to zrobić. Z góry dziękuję
Alireza Noori
Pracowałem w firmie, która się tym zajmowała, więc mam dobry pomysł, jak można to zrobić. Jednak nigdy nie zapłacili faktury za umowę, więc cały ten kod źródłowy znajduje się na zewnętrznym dysku lol. Może spróbuję sprzedać to, co napisałem. To powiedziawszy, zasadniczo w dzisiejszych czasach istnieje wiele interfejsów API, których można użyć do powiązania wszystkiego ze sobą i stworzenia strony internetowej procesora płatności. Zacznę od przyjrzenia się temu, co istnieje w wywołaniach interfejsu API, których możesz użyć w swojej witrynie. Gdy wpłynie dużo pieniędzy, możesz ich użyć, aby zacząć zastępować te zewnętrzne wywołania API kodem wewnętrznym.
Multipleksor
@AlirezaNoori dobrym początkiem jest osiągnięcie zgodności z PCI w zakresie transakcji i zasad baz danych. Chociaż nie jest to wymagane w przypadku bitcoina, działa jako skuteczna wskazówka dotycząca bezpieczeństwa
Garet Claborn
-10

Wielkie zadanie, są szanse, że nie powinieneś odkrywać koła na nowo, używając istniejącego koła (takiego jak paypal).

Jeśli jednak będziesz nalegać na kontynuację. Zacznij od czegoś małego, możesz skorzystać z narzędzia do przetwarzania kart kredytowych (Moneris, Authorize.NET) do przetwarzania kart kredytowych. Większość dostawców ma interfejs API, którego możesz użyć. Uważaj, w zależności od typu karty (Discover, Visa, Amex, Mastercard) i kraju (USA, Kanada, Wielka Brytania) może być konieczne skorzystanie z usług różnych dostawców. Dlatego zbuduj go tak, aby móc komunikować się z wieloma interfejsami API przetwarzania kart kredytowych.

Bezpieczeństwo jest niezbędne, jeśli przechowujesz karty kredytowe i szczegóły płatności. Upewnij się, że poprawnie szyfrujesz rzeczy.

Ponownie, nie wynajduj na nowo koła. Lepiej jest korzystać z usług istniejącego dostawcy i skupić się na rozwoju problemu, którego nie można łatwo kupić.

vfilby
źródło
17
Firmy takie jak Venmo teraz go zabijają. Szaleństwem jest więc myśleć, że nie można stworzyć lepszego koła tylko dlatego, że ktoś taki jak PayPal już istnieje. Wygląda na to, że najnowsza aplikacja mobilna PayPay została przeprojektowana, aby wyglądać jak Venmo.
Moustache_Me_A_Question
Paypal jest właścicielem Venmo
Kusal Hettiarachchi