Przejdź do treści

Jak akceptować płatności kryptowalutowe w OpenCart

Praktyczny przewodnik po przyjmowaniu Bitcoin, USDT i TON w sklepie OpenCart 2 lub 3: jak działa darmowy moduł Payora, jaki status zamówienia powinien oznaczać opłacone oraz dlaczego tylko podpisany webhook powinien go ustawiać.

Payora9 min czytaniaEN · RU · UK · ES · DE · FR · IT · PL · PT · HI · ZH

Aby zaakceptować płatności kryptowalutami w OpenCart, potrzebujesz trzech rzeczy: rozszerzenia płatności w swoim sklepie, klucza API z bramki oraz webhooka, który informuje OpenCart, że pieniądze faktycznie dotarły. Z Payora to sprowadza się do darmowego modułu do zainstalowania w OpenCart 2 i OpenCart 3, który tworzy fakturę za całkowitą kwotę zamówienia, wysyła kupującego do hostowanego kasy, gdzie wybiera Bitcoin, USDT, TON lub inną monetę, i zmienia status zamówienia na opłacony dopiero po potwierdzeniu płatności na łańcuchu przez podpisany callback. Monety trafiają bezpośrednio do portfeli, którymi zarządzasz, ponieważ Payora nigdy nie przechowuje twojego materiału klucza publicznego.

Dlaczego sklepy OpenCart sięgają po kryptowaluty

OpenCart zazwyczaj jest obsługiwany przez ludzi, którzy posiadają swoją infrastrukturę: własne hosting, własną bazę danych, własną kasę. Kryptowaluty pasują do tej grupy z trzech dość nieromantycznych powodów.

  • Międzynarodowi nabywcy, którzy nie mogą ci zapłacić w inny sposób.Karta wydana w jednym kraju i sklep zarejestrowany w innym to loteria. USDT na Tron nie obchodzi, gdzie oboje z was mieszka.
  • Brak chargebacków.Płatność na łańcuchu jest potwierdzona i to wszystko. Nikt nie odwraca jej 90 dni później z powodu roszczenia "towar nie został dostarczony", co jest największym powodem, dla którego sprzedawcy dóbr cyfrowych w ogóle się tym interesują. Omówiliśmy tę dynamikę bardziej szczegółowo w akceptowaniu płatności bez konta handlowego.
  • Brak konta handlowego.Brak rozmowy underwritingowej, brak rezerwy, brak minimalnej miesięcznej kwoty, brak e-maila "twoja kategoria jest wysokiego ryzyka" po sześciu tygodniach.

Żadne z tego nie sprawia, że kryptowaluty są zastępstwem dla kart. To tworzy drugi pas: trzymaj swoje istniejące metody dokładnie tam, gdzie są, a pozwól kryptowalutom przechwycić zamówienia, które wcześniej traciłeś.

Jak akceptować płatności kryptowalutami w OpenCart za pomocą modułu Payora

Moduł jest normalnym rozszerzeniem płatności OpenCart. Jest darmowy, publikujemy go sami obok reszty naszych modułów CMS do wstawienia, a jego konfiguracja to cztery kroki:

  1. Zainstaluj rozszerzenie w swoim sklepie OpenCart 2 lub OpenCart 3 i włącz je jako metodę płatności.
  2. Wklej swój klucz API.Utwórz darmowe konto w Payora, wygeneruj klucz, a następnie wprowadź go w ustawieniach modułu.
  3. Ustaw adres URL webhooka.Moduł udostępnia punkt końcowy zwrotny na Twojej własnej domenie. Skieruj swój projekt Payora na ten adres, aby potwierdzone faktury mogły wracać do Twojego sklepu.
  4. Wybierz swoje monety.Włącz tylko te aktywa, które naprawdę chcesz otrzymywać: BTC, USDT na Tron, TON, cokolwiek pasuje do Twoich nabywców. Nie musisz włączać wszystkich 20+.

Nie ma nic egzotycznego pod spodem. Moduł korzysta z tego samego prostego API REST w formacie JSON, a jednofunkcyjny PHP SDKktórego użyłaby niestandardowa integracja; po prostu łączy to z interfejsem płatności OpenCart, więc nie musisz tego robić. Jeśli prowadzisz również sklep WordPress, Moduł WooCommercedziała na dokładnie tych samych zasadach.

Jedna rzecz, którą warto zrozumieć przed instalacją: twoje adresy odbiorcze pochodzą z xPub, głównego publicznego klucza. Klucze prywatne nigdy nie dotykają serwera, a wypłaty są podpisywane offline. Jeśli ktoś jutro przejąłby twojego hosta OpenCart, mógłby zniszczyć twój katalog, ale nie mógłby przenieść ani jednego satoshi z tego, co zarobiłeś.

Co tak naprawdę widzi kupujący

Z perspektywy kupującego jest to krótkie i nudne, co jest celem.

  1. Wybierają Płać kryptowalutą przy kasie i potwierdź zamówienie. OpenCart tworzy zamówienie w stanie oczekującym.
  2. Lądują na hostowanej kasie, która pokazuje całkowitą kwotę w fiat, powiedzmy 120 EUR, oraz listę monet.
  3. Wybierają jedną. TON, na przykład. Strona pokazuje dokładną kwotę TON, adres, kod QR i odliczanie.
  4. Płacą z ich portfela. Strona śledzi transakcję i czeka na finalizację tej monety.
  5. Payora wysyła podpisany webhook do Twojego sklepu, moduł oznacza zamówienie jako opłacone, a kupujący zostaje przekierowany na stronę sukcesu.

Jeśli chcesz zobaczyć kasę przed zainstalowaniem czegokolwiek, na żywo demo to prawdziwa rzecz.

Pytanie o status zamówienia

Kiedy akceptujesz płatności kryptowalutowe w OpenCart, to tutaj integracje stają się niechlujne, więc zasługuje na własną sekcję. OpenCart ma konfigurowalną listę statusów zamówień, a ty musisz zdecydować, który z nich oznacza "pieniądze są tutaj".

Mapowanie, które działa w praktyce:

Co się stałoCo powinno być w zamówieniu
Kupujący przeszedł do kasy, nic jeszcze nie zapłaconoStatus oczekujący / w oczekiwaniu na płatność
Płatność widoczna w łańcuchu, jeszcze nie finalnaWciąż w oczekiwaniu, nie realizuj
Podpisany webhook mówi, że zapłaconoTwój status przetwarzania / opłacenia. To jest wyzwalacz
Okno faktury wygasło, nic nie dotarłoWygasło lub nie powiodło się, lub pozostaw w oczekiwaniu i anuluj ręcznie

Wybierz status opłacenia świadomie. Jeśli jest to status, który udostępnia produkt do pobrania lub wysyła automatyczny e-mail, musi to być ten, który może ustawić tylko webhook. Nie używaj ponownie statusu, który Twoi pracownicy również ustalają ręcznie dla przelewów bankowych, w przeciwnym razie stracisz możliwość odróżnienia ich podczas audytu.

Nigdy nie oznaczaj zamówienia jako opłacone na przekierowaniu przeglądarki

Kiedy kupujący wraca na Twoją stronę sukcesu, to przekierowanie jest żądaniem z przeglądarki. Przeglądarki są zamykane. Połączenia zrywają się w pociągu. A adres URL sukcesu może być wpisany ręcznie przez kogoś, kto nie zapłacił ani centa. Jeśli Twój sklep oznacza zamówienia jako opłacone na adresie URL powrotu, stworzyłeś przycisk do darmowych towarów.

Podpisany webhook jest źródłem prawdy. To jest POST serwer-do-serwera z podpisem HMAC-SHA256 nad ładunkiem, znacznik czasu, aby tak stare przechwycenia nie mogły być odtwarzane, oraz klucz idempotencji, aby ponowne dostarczenie nie zrealizowało zamówienia dwa razy. Zweryfikuj podpis, sprawdź okno znaczników czasu, usuń duplikaty na kluczu idempotencji, a dopiero potem zmień status. Przekierowanie istnieje, aby pokazać kupującemu przyjazną stronę, nic więcej. Jeśli kupujący zamknie kartę w momencie płatności, webhook nadal ląduje, a zamówienie nadal się realizuje.

Ceny, gdy cena się zmienia

Nie wyceniasz swojego katalogu w Bitcoinach. Zostawiasz OpenCart dokładnie takim, jakim jest, 120 EUR pozostaje 120 EUR, a faktura jest tworzona w walucie fiat. Przy kasie Payora konwertuje na monetę, którą wybrał kupujący, i blokuje tę kwotę na czas wystawienia faktury. Jeśli BTC zmieni się o 3% podczas gdy będą wyciągać telefon z kieszeni, podana kwota nadal pozostaje tą samą kwotą.

Niedopłata i nadpłata są oceniane na podstawie tej zablokowanej kwoty, a nie na podstawie aktualnego kursu, co sprawia, że decyzja o płatności jest jednoznaczna. To, czego Payora nie robi, i czego żaden uczciwy bramkarz nie robi, to ochrona przed tym, ile warta będzie moneta jutro. Jeśli chcesz pewności w walucie fiat, wybierz stablecoiny. USDT i USDC są dostępne w każdej sieci, która je obsługuje, a dla większości sklepów OpenCart USDT na Tron jest pragmatycznym domyślnym wyborem.

Uczciwe kompromisy

Trzy z nich, i powinieneś znać wszystkie trzy, zanim zaakceptujesz płatności kryptowalutowe w OpenCart w produkcji.

  • Brak zwrotów działa w obie strony.Nikt nie może cofnąć płatności od Ciebie, a Ty również nie możesz cofnąć płatności. Zwrot to ręczna płatność wychodząca na adres klienta: prawdziwa transakcja, którą podpisujesz, a nie przycisk, który cofa historię. Zdecyduj o swojej polityce zwrotów przed pierwszym zamówieniem, a nie podczas pierwszego sporu.
  • Opłaty sieciowe różnią się znacznie.Nadawca je płaci, ale nadal kształtują zachowanie. Opłata za Bitcoin w wysokości 2 USD przy zamówieniu za 15 USD to proces zakupu, który porzuca twój nabywca. Umożliwienie taniej sieci to rozwiązanie; kłócenie się z fizyką to nie.
  • Wolny łańcuch oznacza wolniejszy status płatności.Ostateczność w Bitcoinie to minuty, a nie milisekundy. Jeśli sprzedajesz dobra cyfrowe, które nabywcy oczekują natychmiast, prowadź z szybkimi sieciami i pozwól, aby BTC było opcją dla tych, którzy tego chcą.

Jeśli chodzi o koszty: akceptacja wynosi 0%. Opłaty obowiązują tylko wtedy, gdy przenosisz pieniądze — 1,5% przy wypłatach, transferach i wypłatach w planie Free (0,75% w Pro, 0,5% w Business), plus opłata sieciowa za monetę (minimalna wypłata 50 USD) — plus opłata sieciowa on-chain, którą zawsze płaci nadawca. Pełne zestawienie znajduje się na cennik.

Jeśli prowadzisz sklep OpenCart i cicho odrzucałeś nabywców, których karty nie działają z tobą, to jest to praca na popołudnie.Utwórz darmowe konto, zainstaluj moduł, skieruj webhook na swój sklep i włącz jedną monetę, aby zacząć.

Comments

Gotowy, aby zacząć?

Utwórz konto i wystaw pierwszą fakturę w mniej niż godzinę.

Na co odpowiada ta strona