Salta al contenuto

Come accettare pagamenti in crypto su OpenCart

Una guida pratica per accettare Bitcoin, USDT e TON in un negozio OpenCart 2 o 3: come funziona il modulo gratuito di Payora, quale stato dell'ordine dovrebbe significare pagato e perché solo il webhook firmato dovrebbe mai impostarlo.

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

Per accettare pagamenti in criptovaluta su OpenCart hai bisogno di tre cose: un'estensione di pagamento nel tuo negozio, una chiave API da un gateway e un webhook che informa OpenCart che il denaro è effettivamente arrivato. Con Payora, questo si traduce in un modulo gratuito da integrare per OpenCart 2 e OpenCart 3 che crea una fattura per l'importo dell'ordine, invia l'acquirente a un checkout ospitato dove può scegliere Bitcoin, USDT, TON o un'altra moneta, e cambia lo stato dell'ordine in pagato solo quando un callback firmato conferma il pagamento on-chain. Le monete si depositano direttamente nei portafogli che controlli, perché Payora detiene solo il tuo materiale di chiave pubblica.

Perché i negozi OpenCart si rivolgono alla criptovaluta

OpenCart è solitamente gestito da persone che possiedono il proprio stack: il proprio hosting, il proprio database, il proprio checkout. La criptovaluta si adatta a quel pubblico per tre motivi piuttosto poco romantici.

  • Acquirenti internazionali che non possono pagarti altrimenti. Una carta emessa in un paese e un negozio registrato in un altro è una scommessa. USDT su Tron non si preoccupa di dove viviate entrambi.
  • Nessun chargeback. Un pagamento on-chain viene confermato ed è fatto. Nessuno lo annulla 90 giorni dopo per un reclamo di "merci non ricevute", che è il motivo principale per cui i venditori di beni digitali considerano tutto ciò. Abbiamo trattato questa dinamica in modo più approfondito in accettare pagamenti senza un conto merchant.
  • Nessun account merchant.Nessuna chiamata di sottoscrizione, nessuna riserva rotante, nessun minimo mensile, nessuna email "la tua categoria è ad alto rischio" sei settimane dopo.

Nessuna di queste cose rende la crypto un sostituto delle carte. La rende una seconda corsia: mantieni i tuoi metodi esistenti esattamente dove sono, e lascia che la crypto catturi gli ordini che stavi precedentemente perdendo.

Come accettare pagamenti in crypto su OpenCart con il modulo Payora

Il modulo è un'estensione di pagamento normale per OpenCart. È gratuito, lo pubblichiamo noi stessi insieme al resto dei nostri moduli CMS drop-in, e configurarlo richiede quattro passaggi:

  1. Installa l'estensione nel tuo negozio OpenCart 2 o OpenCart 3 e abilitalo come metodo di pagamento.
  2. Incolla la tua chiave API.Crea un account gratuito su Payora, genera una chiave, inseriscila nelle impostazioni del modulo.
  3. Imposta l'URL del webhook.Il modulo espone un endpoint di callback sul tuo dominio. Punta il tuo progetto Payora su di esso in modo che le fatture confermate richiamino il tuo negozio.
  4. Scegli le tue criptovalute.Abilita solo gli asset che desideri effettivamente ricevere: BTC, USDT su Tron, TON, qualunque cosa si adatti ai tuoi acquirenti. Non è necessario attivare tutti i 20+.

Non c'è nulla di esotico sotto. Il modulo parla la stessa API REST in JSON semplice e SDK PHP in un file che un'integrazione personalizzata utilizzerebbe; collega semplicemente questo all'interfaccia di pagamento di OpenCart in modo che tu non debba farlo. Se gestisci anche un negozio WordPress, il Modulo WooCommerce funziona esattamente sugli stessi principi.

Una cosa da capire prima di installare: i tuoi indirizzi di ricezione derivano da un xPub, una chiave master pubblica chiave. Le chiavi private non toccano mai il server e i pagamenti sono firmati offline. Se qualcuno possedesse il tuo host OpenCart domani, potrebbe vandalizzare il tuo catalogo, ma non potrebbe muovere un satoshi di ciò che hai guadagnato.

Cosa vede effettivamente l'acquirente

Dal lato dello shopper è breve e noioso, che è l'obiettivo.

  1. Scelgono Paga con crypto al checkout e conferma l'ordine. OpenCart crea l'ordine in uno stato di attesa.
  2. Atterrano su checkout ospitato, che mostra il totale in fiat, ad esempio 120 EUR, e un elenco di monete.
  3. Scelgono una. TON, per esempio. La pagina mostra un importo esatto in TON, un indirizzo, un codice QR e un conto alla rovescia.
  4. Pagano dal loro portafoglio. La pagina tiene traccia della transazione e attende la finalità di quella moneta.
  5. Payora invia il webhook firmato al tuo negozio, il modulo segna l'ordine come pagato e l'acquirente viene reindirizzato alla tua pagina di successo.

Se vuoi vedere il checkout prima di installare qualcosa, il demo dal vivo è la cosa reale.

La domanda sullo stato dell'ordine

Quando accetti pagamenti in criptovaluta su OpenCart, è qui che le integrazioni diventano imprecise, quindi merita una sezione a parte. OpenCart ha un elenco configurabile di stati degli ordini, e devi decidere quale significa "i soldi sono qui".

La mappatura che funziona nella pratica:

Cosa è successoCosa dovrebbe essere l'ordine
Acquirente inviato al checkout, nulla pagato ancoraUno stato in attesa / in attesa di pagamento
Pagamento visto on-chain, non ancora definitivoAncora in attesa, non evadere
Webhook firmato dice pagatoIl tuo stato di elaborazione / pagamento. Questo è il trigger
Finestra della fattura scaduta, nulla è arrivatoScaduto o fallito, oppure lascialo in attesa e annulla manualmente

Scegli deliberatamente lo stato pagato. Se è uno stato che rilascia un prodotto scaricabile o invia un'email automatica, deve essere quello che solo il webhook può impostare. Non riutilizzare uno stato che il tuo personale imposta manualmente per i bonifici, altrimenti perderai la possibilità di distinguere i due quando fai un audit.

Non contrassegnare mai un ordine come pagato durante il reindirizzamento del browser

Quando l'acquirente torna alla tua pagina di successo, quel reindirizzamento è una richiesta da un browser. I browser si chiudono. Le connessioni si interrompono su un treno. E un URL di successo può essere digitato a mano da qualcuno che non ha mai pagato un centesimo. Se il tuo negozio contrassegna gli ordini come pagati sull'URL di ritorno, hai creato un pulsante per beni gratuiti.

Il webhook firmato è la fonte della verità. È un POST server-to-server che trasporta una firma HMAC-SHA256 sul payload, un timestamp così vecchio che le catture non possono essere riprodotte, e una chiave di idempotenza in modo che una consegna ripetuta non soddisfi l'ordine due volte. Verifica la firma, controlla la finestra del timestamp, deduplica sulla chiave di idempotenza, e solo allora cambia lo stato. Il reindirizzamento esiste per mostrare all'acquirente una pagina amichevole, nient'altro. Se un acquirente chiude la scheda nel momento in cui paga, il webhook arriva comunque e l'ordine si completa.

Prezzi quando il prezzo si muove

Non prezzate il vostro catalogo in Bitcoin. Lasciate OpenCart esattamente com'è, 120 EUR rimane 120 EUR, e la fattura viene creata in fiat. Al momento del pagamento, Payora converte nella moneta scelta dall'acquirente e blocca quell'importo per la finestra della fattura. Se il BTC si muove del 3% mentre cercano il telefono in tasca, l'importo quotato rimane comunque quello.

Il pagamento insufficiente e il pagamento eccessivo vengono giudicati rispetto a quella cifra bloccata piuttosto che a un ticker in tempo reale, il che mantiene la decisione di pagamento inequivocabile. Ciò che Payora non fa, e ciò che nessun gateway onesto fa, è proteggerti da ciò che la moneta varrà domani. Se desideri certezza in fiat, prendi stablecoin. USDT e USDC sono disponibili su ogni rete che le supporta, e per la maggior parte dei negozi OpenCart, USDT su Tron è il default pragmatico.

I compromessi onesti

Tre di essi, e dovresti conoscere tutti e tre prima di accettare pagamenti in criptovaluta su OpenCart in produzione.

  • Nessun chargeback taglia in entrambi i sensi.Nessuno può riprendersi un pagamento da te, e tu non puoi riprenderne uno neanche. Un rimborso è un pagamento manuale in uscita all'indirizzo del cliente: una transazione reale che firmi, non un pulsante che annulla la storia. Decidi la tua politica di rimborso prima del tuo primo ordine, non durante la tua prima controversia.
  • Le commissioni di rete variano, e molto.Il mittente li paga, ma influenzano ancora il comportamento. Una commissione di 2 USD in Bitcoin su un ordine di 15 USD è un checkout che il tuo acquirente abbandona. Abilitare una rete economica è la soluzione; discutere con la fisica non lo è.
  • Una catena lenta significa uno stato di pagamento più lento.La finalità su Bitcoin è di minuti, non millisecondi. Se vendi beni digitali che gli acquirenti si aspettano istantaneamente, punta su reti veloci e lascia che BTC sia l'opzione per le persone che lo vogliono.

Sui costi: accettare è 0%. Le commissioni si applicano solo quando trasferisci denaro — 1,5% su pagamenti, trasferimenti e prelievi sul piano Free (0,75% su Pro, 0,5% su Business), più la commissione di rete della moneta (prelievo minimo $50) — più la commissione di rete on-chain, che il mittente paga sempre. La ripartizione completa è su prezzi.

Se gestisci un negozio OpenCart e hai silenziosamente allontanato acquirenti le cui carte non funzionano con te, questo è un lavoro di un pomeriggio.Crea un account gratuito, installa il modulo, punta il webhook al tuo negozio e abilita una moneta per iniziare.

Comments

Pronto a iniziare?

Crea un account ed emetti la tua prima fattura in meno di un’ora.

Cosa risponde questa pagina