VibeFox OpenPay for OpenCart — Guida
Requisiti
OpenCart: 3.0.x (testato su 3.0.5.0) o 4.0.2 e versioni successive (testato su 4.1.0.3).
PHP: 8.0 o successivo.
HTTPS: il tuo negozio deve usare HTTPS, perché il modulo della carta si trova nella pagina del checkout.
OpenPay account: un account OpenPay del Messico, della Colombia o del Perù. Ti servono il suo Merchant ID, la chiave privata (sk_...) e la chiave pubblica (pk_...). Le dashboard sandbox e di produzione hanno Merchant ID e chiavi diversi, e l'estensione li tiene separati.
Currency: il cliente deve pagare in una valuta accettata dal Paese del tuo account: Messico — MXN o USD, Colombia — COP o USD, Perù — PEN o USD. Per le altre valute il metodo di pagamento non viene mostrato nel checkout.
VibeFox license key: si acquista su vibefox.net. Una chiave funziona su un solo dominio.
La carta viene inserita nella pagina del checkout, ma viene letta e tokenizzata nel browser da openpay.js. I campi della carta non hanno un nome e non vengono mai inviati al tuo server. Poiché il modulo della carta si trova sulla tua pagina, il tuo ambito PCI DSS è SAQ A-EP; chiedi al tuo acquirer.
Installazione
Il download è un unico file zip con i pacchetti per entrambe le versioni di OpenCart. Scompattalo sul tuo computer. Contiene README.txt, il pacchetto per OpenCart 3 wcp_openpay_gateway-oc3-(version).ocmod.zip e il pacchetto per OpenCart 4 wcp_openpay_gateway.ocmod.zip. Installa solo il pacchetto per la tua versione di OpenCart. La chiave di licenza è la stessa per entrambe le versioni.
OpenCart 3
1. Nel pannello di amministrazione vai su Extensions > Installer, fai clic su Upload e scegli il file wcp_openpay_gateway-oc3-(version).ocmod.zip. L'estensione non ha modifiche OCMOD, quindi Extensions > Modifications non deve essere aggiornato. In alternativa all'installer, puoi copiare il contenuto della cartella upload di questo pacchetto nella cartella principale del tuo negozio.
2. Vai su Extensions > Extensions e scegli il tipo Payments. Trova VibeFox OpenPay Gateway e fai clic su Install (il pulsante verde +). Il tuo utente amministratore deve avere il permesso di modificare l'elenco delle estensioni di pagamento.
3. Fai clic su Edit (il pulsante con la matita) per aprire la pagina delle impostazioni. Incolla la tua chiave di licenza VibeFox in License key, nel blocco della licenza in cima alla pagina, e fai clic su Activate (vedi Chiave di licenza).
4. Scegli l'Account country e inserisci le chiavi sandbox e live (vedi Configurazione).
5. Consigliato: aggiungi l'URL del webhook nella dashboard di OpenPay (vedi Configurazione).
6. Attiva Enable / Disable e fai clic su Save. Prova un pagamento con le carte di test della sandbox OpenPay, poi disattiva Sandbox mode per accettare pagamenti reali. Conserva le chiavi sandbox finché potresti dover rimborsare ordini sandbox.
OpenCart 4
1. Nel pannello di amministrazione vai su Extensions > Installer, fai clic su Upload e scegli il file wcp_openpay_gateway.ocmod.zip. Non rinominare il file: OpenCart 4 ricava il codice dell'estensione dal nome del file, e un pacchetto rinominato non funziona.
2. Il pacchetto compare nell'elenco delle estensioni installate, nella stessa pagina. Fai clic su Install (il pulsante verde +) accanto ad esso.
3. Vai su Extensions > Extensions e scegli il tipo Payments. Trova VibeFox OpenPay Gateway, fai clic su Install (il pulsante verde +), poi su Edit (il pulsante con la matita).
4. Inserisci la chiave di licenza, le chiavi OpenPay e il webhook come nei passaggi da 3 a 6 per OpenCart 3. La pagina delle impostazioni e i suoi campi sono uguali in entrambe le versioni. Cambia solo l'URL del webhook (vedi Webhook).
Una nuova installazione parte con il metodo di pagamento disattivato e la modalità sandbox attiva.
Configurazione
Tutte le impostazioni si trovano nella pagina dell'estensione: Extensions > Extensions > Payments > VibeFox OpenPay Gateway > Edit. Le sezioni sono elencate a sinistra; il pulsante Save sotto l'elenco salva l'intera pagina. Sopra le impostazioni la pagina ti avvisa quando le chiavi della modalità attuale sono incomplete (il metodo di pagamento viene nascosto nel checkout) e quando la valuta predefinita del tuo negozio non è accettata dal Paese del conto selezionato, e mostra Sandbox mode is enabled — no real charges are made. mentre la modalità sandbox è attiva. Senza il permesso di modificare l'estensione, la pagina mostra le impostazioni ma non può salvarle.
Al salvataggio le chiavi vengono verificate. Un Merchant ID può contenere solo lettere e cifre, una chiave privata deve iniziare con sk_ e una chiave pubblica con pk_. Un valore non valido non viene salvato: resta il valore precedente e compare un errore, per esempio Sandbox: The private key must start with sk_. Lo stesso vale per un Sort Order che non sia un numero intero (Sort Order must be a whole number — the previous value was kept.) e per un Total che non sia un numero pari o superiore a 0. Gli altri campi vengono salvati. Se il metodo di pagamento è attivo ma le chiavi della modalità attuale sono incomplete, vedi anche un messaggio che indica che il gateway resta nascosto nel checkout. Un Title vuoto o più lungo di 128 caratteri viene rifiutato con Enter a title for the payment method (1 to 128 characters)., e in quel caso non si salva nulla.
OpenPay
Enable / Disable: Enable OpenPay card payments attiva o disattiva il metodo di pagamento. Predefinito: disattivato.
Title: il nome del metodo di pagamento che i clienti vedono nel checkout. È anche il nome del metodo di pagamento salvato nell'ordine. Predefinito: Credit or debit card (OpenPay). Obbligatorio, fino a 128 caratteri.
Description: il testo mostrato sopra il modulo della carta nel passaggio Confirm Order. Predefinito: Pay securely with your credit or debit card. La tua banca potrebbe chiederti di confermare il pagamento (3D Secure).
Sort Order: la posizione di OpenPay tra i metodi di pagamento nel checkout. Lascia il campo vuoto oppure inserisci un numero intero (sono ammessi i numeri negativi).
Geo Zone: offri OpenPay solo per gli indirizzi di pagamento nella zona geografica selezionata. Predefinito: All zones. Le zone geografiche si configurano in System > Localisation > Geo Zones. Su OpenCart 4, quando il negozio non richiede alcun indirizzo di pagamento, viene usato quello di spedizione.
Total: il totale del checkout, nella valuta predefinita del negozio, che un ordine deve raggiungere prima che venga offerto OpenPay. Lascia il campo vuoto per offrire OpenPay per qualsiasi totale.
Account OpenPay
Il Merchant ID, la chiave privata (sk_) e la chiave pubblica (pk_) si trovano nella tua dashboard OpenPay, sotto Settings (Configuración). La sezione contiene link alle dashboard sandbox e di produzione di Messico, Colombia e Perù.
Account country: il Paese del tuo account OpenPay. Determina l'API OpenPay, la libreria openpay.js di quel Paese e le valute accettate. Predefinito: Mexico.
Sandbox mode: usa la sandbox OpenPay (chiavi di test, nessun addebito reale) e passa sia le chiavi sia l'API alla sandbox. Nel checkout viene mostrato un badge SANDBOX MODE mentre è attiva. Predefinito: attivo. Disattivala per accettare pagamenti reali.
Sandbox Merchant ID: il Merchant ID dalla dashboard sandbox, Settings (Configuración), chiavi API.
Sandbox Private Key: la chiave privata sandbox. Inizia con sk_. Viene usata solo sul server; non condividerla mai.
Sandbox Public Key: la chiave pubblica sandbox. Inizia con pk_. openpay.js la usa nel browser per tokenizzare la carta.
Live Merchant ID: il Merchant ID dalla dashboard di produzione, Settings (Configuración), chiavi API.
Live Private Key: la chiave privata di produzione (sk_...).
Live Public Key: la chiave pubblica di produzione (pk_...).
Le chiavi private salvate non vengono mai mostrate di nuovo. Il campo resta vuoto e mostra Saved — leave empty to keep it. Inserisci un nuovo valore solo se vuoi cambiarlo. Per rimuovere una chiave privata salvata, spunta Clear the saved key on save sotto il campo e fai clic su Save.
Webhook
Il webhook non è obbligatorio, ma è consigliato. Conferma i pagamenti quando il cliente non torna dalla pagina 3D Secure, per esempio dopo aver chiuso il browser. Nella dashboard OpenPay vai su Settings > Webhooks e aggiungi l'URL mostrato in Webhook URL in questa sezione. Su OpenCart 3 ha questo aspetto: https://your-store/index.php?route=extension/payment/wcp_openpay_gateway/webhook, su OpenCart 4 questo: https://your-store/index.php?route=extension/wcp_openpay_gateway/payment/wcp_openpay_gateway.webhook. È costruito a partire dall'indirizzo della vetrina della tua installazione di OpenCart. Copialo esattamente come lo mostrano le impostazioni. Aggiungi il webhook nella dashboard di ogni modalità che usi (sandbox e produzione).
Quando aggiungi il webhook, OpenPay invia a questo URL un codice di verifica. Il codice compare in questa sezione con la data di arrivo, così puoi confermare il webhook nella dashboard OpenPay. Fino ad allora la sezione mostra No verification code received yet.
L'estensione gestisce questi eventi:
OpenPay non firma i webhook, quindi l'estensione non considera mai attendibile la notifica in sé. La usa solo per trovare l'addebito, poi legge l'addebito dall'API OpenPay con la chiave privata della modalità e del Paese del conto in cui è stato effettuato il pagamento. Una notifica relativa a un addebito che questo negozio non ha creato viene ignorata. Il webhook funziona anche quando il negozio è in modalità manutenzione: OpenCart 3 lascia passare le richieste delle estensioni di pagamento, mentre su OpenCart 4 l'estensione aggiunge un'azione di avvio (startup action) che lascia passare il webhook e il ritorno del cliente dalla pagina 3D Secure.
Ordini
OpenCart crea l'ordine nel passaggio Confirm Order senza stato (un ordine mancante). L'ordine riceve uno stato solo dopo che OpenPay ha confermato l'addebito. Una carta rifiutata o un controllo 3D Secure non riuscito lasciano l'ordine senza stato, una nota ne spiega il motivo e il cliente può pagare di nuovo. Ogni campo qui sotto elenca i tuoi stati ordine di OpenCart; puoi crearne di nuovi in System > Localisation > Order Statuses.
Order Status After Payment: OpenPay ha confermato l'addebito e il suo importo e la sua valuta corrispondono all'ordine. Predefinito: Processing.
Awaiting OpenPay Payment: l'addebito è in corso (non ancora acquisito); il webhook lo completa o lo fa fallire più tardi. Predefinito: Pending.
OpenPay Payment On Hold: OpenPay ha addebitato un importo o una valuta diversi dall'ordine, oppure un addebito è stato completato dopo che l'ordine era stato annullato. Predefinito: Pending.
Payment Error Status: l'addebito di un ordine in attesa di OpenPay o sospeso è fallito, è stato annullato o è scaduto. Predefinito: Failed.
Refunded Status: l'addebito viene rimborsato per intero dalla pagina dell'ordine. I rimborsi parziali aggiungono solo una nota. Predefinito: Refunded.
Avanzate
Debug log: registra i passaggi del pagamento in wc_opy_debug.log.php, nella cartella dei log di OpenCart (storage/logs). Il file non può essere aperto dal web e, al raggiungimento di 5 MB, viene spostato in wc_opy_debug.old.log.php. Errori e avvisi vengono registrati anche quando è disattivato. Chiavi, dati della carta e dati dei clienti non vengono mai registrati. Predefinito: disattivato.
Log: mostra la dimensione e le voci più recenti del log. Fai clic su Clear log per svuotarlo.
Delete data on uninstall: se attivo, disinstallando l'estensione vengono rimosse le impostazioni del gateway, il codice di verifica del webhook salvato e il log. I registri degli addebiti OpenPay degli ordini fanno parte dello storico dei pagamenti e vengono sempre conservati, così gli ordini possono essere rimborsati anche dopo una reinstallazione. Predefinito: disattivato.
Import / Export
Export: Download JSON salva le impostazioni in un file JSON. Le chiavi private non vengono esportate.
Import: incolla un JSON esportato in precedenza e fai clic su Import per ripristinare le impostazioni. Le chiavi private salvate vengono conservate.
Checkout
Nel passaggio Payment Method il cliente sceglie il metodo di pagamento (per impostazione predefinita Credit or debit card (OpenPay)). Nel passaggio Confirm Order il cliente vede la tua descrizione e il modulo della carta: Cardholder name, Card number, Expiry (MM/YY) e Card code (CVV). In modalità sandbox il modulo mostra SANDBOX MODE — Test environment. No real charges will be made. OpenCart crea l'ordine in questo passaggio, ancora senza stato. Su OpenCart 4 il cliente sceglie il metodo di pagamento con il pulsante Choose del blocco del metodo di pagamento, nella finestra Payment method options; il modulo della carta si trova nella sezione di conferma in fondo alla pagina del checkout, sopra Confirm Order. Quando il cliente fa clic su Confirm Order, openpay.js trasforma la carta in un token monouso nel browser, e la libreria antifrode aggiunge un ID di sessione del dispositivo. Solo questi due valori vengono inviati al tuo negozio. Un modulo incompleto mostra Please fill in all card fields. sotto il modulo.
L'estensione crea quindi l'addebito con 3D Secure per il totale dell'ordine nella valuta dell'ordine e invia il cliente alla pagina 3D Secure della sua banca, servita da OpenPay. Ogni tentativo riceve un proprio riferimento ordine OpenPay. La descrizione dell'addebito è Order #, il numero dell'ordine e il nome del tuo negozio. Nome, e-mail e telefono del cliente, presi dall'indirizzo di pagamento, vengono trasmessi a OpenPay; non viene creato alcun account cliente OpenPay.
Quando il cliente torna, l'estensione legge l'addebito dall'API OpenPay. L'ordine viene segnato come pagato solo dopo la conferma di OpenPay: l'addebito deve appartenere a questo ordine, essere completato e corrispondere esattamente al totale e alla valuta dell'ordine. Poi l'ordine riceve il suo stato nel modo standard di OpenCart, con le consuete e-mail d'ordine e l'aggiornamento del magazzino, e il cliente vede la pagina di successo dell'ordine di OpenCart con Your card payment has been received. Se OpenPay segnala che l'addebito è in corso, l'ordine riceve lo stato Awaiting OpenPay Payment e la pagina mostra We are confirming your card payment with OpenPay. The order will be updated automatically — please do not pay again. Se l'esito non è ancora noto, una pagina Payment confirmation mostra lo stesso testo con un pulsante Check again e un pulsante Back to checkout; il webhook imposta lo stato dell'ordine non appena arriva. Se un addebito in corso fallisce più tardi, la pagina di successo mostra Your OpenPay card payment was not completed. Please contact us about this order.
Se la carta viene rifiutata o 3D Secure non riesce, l'ordine resta senza stato, viene aggiunta una nota e il cliente torna al checkout con The card payment was not completed (declined or 3-D Secure failed). Please try again or use another card. Il carrello viene mantenuto. Su OpenCart 4 questo messaggio viene mostrato sopra la pagina del checkout. OpenCart 3 crea un nuovo ordine ogni volta che viene mostrato il passaggio Confirm Order; OpenCart 4 mantiene un unico ordine per il checkout e lo aggiorna, così il cliente paga di nuovo lo stesso ordine con un nuovo tentativo. Prima di un nuovo tentativo l'estensione controlla il precedente addebito del carrello: se di fatto è stato pagato, quell'ordine riceve il suo stato senza un secondo addebito; se è ancora in corso, il cliente vede A previous payment for this order is still being processed. Please do not pay again — the order will be updated automatically.; se il suo stato non può essere verificato, non viene effettuato alcun nuovo addebito e il cliente vede We could not confirm the status of your previous payment attempt. Please try again in a few minutes. Un carrello già pagato non viene mai addebitato di nuovo.
Su OpenCart 4 il checkout mantiene l'ordine fino alla visualizzazione della pagina di successo. Se nel frattempo quell'ordine è stato chiuso (per esempio il suo addebito non è riuscito dopo essere stato in attesa di pagamento, oppure lo hai annullato o rimborsato), il cliente torna al checkout con This order can no longer be paid. Please reload the checkout page and confirm the order again., e il successivo Confirm Order paga un nuovo ordine. Se quell'ordine ha già uno stato e nel carrello ci sono ora altri prodotti o quantità diverse, anche il cliente torna al checkout e il nuovo carrello riceve un nuovo ordine.
Le carte rifiutate ricevono un messaggio chiaro, per esempio The card has insufficient funds. Please use another card., The card has expired. Please use another card. oppure The security code (CVV) is not valid. Please check it and try again. Gli errori tecnici di OpenPay non vengono mai mostrati ai clienti; finiscono nel log e nelle note dell'ordine.
Il metodo di pagamento viene nascosto nel checkout quando è disattivato, quando le chiavi della modalità attuale sono incomplete o quando il cliente paga in una valuta che il Paese del conto non accetta.
L'estensione accetta solo pagamenti con carta, addebitati subito. Non prevede carte salvate, abbonamenti, rate senza interessi (MSI) o pagamenti rateali, pagamenti con punti della carta, contanti, pagamenti SPEI, PSE o CoDi, né autorizzazione e cattura separate.
Ordini e rimborsi
Stati degli ordini
No status (missing order): il cliente si trova sulla pagina 3D Secure, non ha completato il pagamento oppure la carta è stata rifiutata. In Sales > Orders questi ordini vengono mostrati solo con il filtro Order Status impostato su Missing Orders.
Su OpenCart 4 un ordine non pagato del checkout può ricevere lo stato Voided, che OpenCart 4 imposta quando il cliente torna al passaggio Confirm Order. L'estensione considera tale ordine come un ordine senza stato, e un pagamento successivo lo conferma comunque.
Order Status After Payment (default Processing): il pagamento è stato confermato. Una nota mostra l'ID dell'addebito OpenPay e la modalità (produzione o sandbox).
Awaiting OpenPay Payment (default Pending): OpenPay segnala che l'addebito è in corso (non ancora acquisito). L'ordine passa a Order Status After Payment quando l'addebito viene completato, oppure a Payment Error Status se fallisce.
OpenPay Payment On Hold (default Pending): OpenPay segnala un addebito completato con importo o valuta diversi da quelli dell'ordine (l'ordine non viene segnato come pagato e la nota mostra la differenza), oppure è arrivato un pagamento per un ordine già annullato o rimborsato. Controlla l'ordine ed evadilo oppure rimborsa il pagamento.
Payment Error Status (default Failed): un addebito in corso è fallito, è stato annullato o è scaduto.
Refunded Status (default Refunded): l'addebito è stato rimborsato per intero tramite l'estensione.
Se per un ordine o un carrello già pagato arriva un secondo addebito completato, l'ordine non viene modificato. Una nota che inizia con OpenPay WARNING sull'ordine pagato ti chiede di rimborsare il duplicato nella dashboard OpenPay.
Le note sono voci della History dell'ordine che il cliente non vede.
Scheda VibeFox OpenPay Gateway
In Sales > Orders apri un ordine pagato con OpenPay. In fondo alla pagina dell'ordine, accanto a History e Additional, la scheda VibeFox OpenPay Gateway mostra l'ID dell'addebito, lo stato dell'addebito, l'ambiente e il Paese del conto con l'etichetta Sandbox per i pagamenti sandbox, gli importi Charged / order, l'importo rimborsato, il modulo di rimborso, lo storico dei rimborsi e le OpenPay notes dell'ordine. La scheda viene mostrata agli utenti che hanno accesso all'estensione.
Rimborsi
Per gli account di Messico e Perù: nella scheda inserisci l'Amount (viene compilato con l'importo non ancora rimborsato), facoltativamente un Reason (optional), e fai clic su Refund via OpenPay. Conferma la domanda Refund this amount through OpenPay? This cannot be undone. Sono supportati rimborsi totali e parziali, fino all'importo addebitato da OpenPay. Ti serve il permesso di modificare l'estensione (impostato in System > Users > User Groups). Il rimborso viene inviato con le chiavi della modalità e del Paese del conto in cui è avvenuto l'addebito, quindi le chiavi di quella modalità devono essere impostate. Se OpenPay non accetta il rimborso, la scheda mostra l'errore, per esempio OpenPay refund failed: ..., e non viene registrato alcun rimborso. Un rimborso riuscito viene aggiunto allo storico dei rimborsi e alle note, con l'ID del rimborso OpenPay. Un rimborso totale imposta l'ordine su Refunded Status senza notificare il cliente e senza rimettere i prodotti in magazzino, come un cambio di stato manuale. Un rimborso parziale non modifica lo stato. I rimborsi sono disponibili dopo la conferma del pagamento da parte di OpenPay; un ordine sospeso per una differenza di importo non viene rimborsato tramite l'estensione.
OpenPay Colombia non supporta il rimborso delle carte tramite API, come nelle integrazioni ufficiali di OpenPay. Per gli addebiti colombiani la scheda non mostra un modulo di rimborso e ne spiega il motivo; rimborsa l'addebito dalla dashboard OpenPay.
I resi di prodotti in Sales > Returns non restituiscono denaro tramite OpenPay.
I rimborsi e le contestazioni effettuati nella dashboard OpenPay arrivano tramite webhook e vengono aggiunti alle note una sola volta. Lo stato dell'ordine non cambia automaticamente. Aggiornalo manualmente se necessario.
Chiave di licenza
L'estensione funziona con una chiave di licenza VibeFox ottenuta su vibefox.net. Il blocco della licenza License — VibeFox OpenPay Gateway è il primo blocco di Extensions > Extensions > Payments > VibeFox OpenPay Gateway > Edit, sopra le impostazioni. Incolla la chiave in License key e fai clic su Activate. Dopo di che il blocco mostra la chiave mascherata, lo stato (per esempio la data fino alla quale la licenza è attiva, e il tuo dominio) e i pulsanti Check now per verificare di nuovo lo stato, Change key per inserire un'altra chiave e Remove key per rimuovere la chiave da questo negozio. Sotto compaiono la riga Product: opencart-payment-openpay e il link Manage licenses and domains in your account, che apre il tuo account vibefox.net. Solo gli utenti amministratori con il permesso Modify per l'estensione possono cambiare la chiave. I testi del blocco seguono la lingua dell'amministrazione (sono inclusi inglese e russo).
Se la chiave non viene accettata, il blocco indica il motivo, per esempio Key not found, This key belongs to another product, Domain limit reached oppure License expired on seguito da una data. Dopo aver cambiato l'indirizzo del negozio, o dopo aver liberato un posto per il dominio nel tuo account, fai clic su Check now. Se il server delle licenze non è raggiungibile, l'estensione continua a funzionare con l'ultimo stato noto.
Una chiave funziona su un solo dominio: l'indirizzo del negozio dalla configurazione di OpenCart. Rimuovere la chiave dal negozio non libera il suo posto per il dominio. Liberalo nel tuo account vibefox.net.
Senza una chiave attiva, OpenPay non viene mostrato ai clienti nel checkout. Se un pagamento viene avviato comunque, il cliente vede This payment method is not available. Please choose another one. Un utente amministratore che ha effettuato l'accesso all'amministrazione nello stesso browser vede ancora il metodo di pagamento nel negozio, contrassegnato con (unlicensed — visible to admins only), così puoi configurare e provare l'estensione prima di acquistare una chiave. Su OpenCart 4 questa anteprima non è disponibile: il negozio non vede che hai effettuato l'accesso all'amministrazione, quindi senza una chiave attiva il metodo di pagamento è nascosto a tutti. Dopo aver aperto una volta la pagina Edit, nella Dashboard dell'amministrazione compare un promemoria. Chiudilo con × per nasconderlo per 7 giorni. Gli ordini esistenti non sono interessati: i pagamenti già avviati continuano a essere confermati e i rimborsi funzionano.
Quando una licenza scade, l'estensione continua a funzionare, ma aggiornamenti e supporto richiedono il rinnovo. Lo stato viene verificato di nuovo automaticamente quando apri la Dashboard o la pagina Edit dell'amministrazione: una volta al giorno nei primi 14 giorni dopo l'inserimento della chiave, poi una volta alla settimana. Non serve alcun cron job. Disinstallando l'estensione vengono sempre rimossi la chiave di licenza e lo stato della licenza.
Risoluzione dei problemi
OpenPay non compare nel checkout: verifica che la licenza sia attiva, che Enable / Disable sia attivo e che la modalità attuale abbia tutte e tre le chiavi: le chiavi sandbox in modalità sandbox, le chiavi live in modalità live. Verifica che il cliente paghi in una valuta accettata dall'Account country (Messico: MXN, USD; Colombia: COP, USD; Perù: PEN, USD). La pagina delle impostazioni mostra un avviso in ciascuno di questi casi. Verifica anche che l'indirizzo di pagamento sia nella Geo Zone selezionata e che l'ordine raggiunga il Total impostato nelle impostazioni.
Il pagamento è andato a buon fine, ma l'ordine resta senza stato: il cliente non è tornato dalla pagina 3D Secure e il webhook non funziona. Verifica che l'URL del webhook sia stato aggiunto nella dashboard OpenPay della modalità che usi, esattamente come lo mostrano le impostazioni, con gli eventi elencati sopra. Verifica che le chiavi della modalità in cui è stato effettuato il pagamento siano compilate: senza di esse il webhook risponde not configured e OpenPay riprova più tardi. L'ordine riceve comunque il suo stato quando il cliente torna nel negozio o quando prova a pagare di nuovo lo stesso carrello.
Il webhook risponde ignored (unknown order): l'addebito non è stato creato da questo negozio, per esempio un addebito di un altro negozio sullo stesso account OpenPay. Non viene modificato nulla.
Il webhook risponde verification failed: non è stato possibile raggiungere l'API OpenPay per leggere l'addebito. OpenPay riprova il webhook.
Il webhook risponde busy: il carrello era in aggiornamento da un'altra richiesta nello stesso momento, oppure non è stato possibile impostare lo stato dell'ordine. OpenPay riprova il webhook. Attiva Debug log per vedere il motivo.
L'URL del webhook mostra invalid body nel browser: è normale. L'URL accetta solo notifiche da OpenPay.
Il cliente vede The secure card form could not be loaded: openpay.js o la libreria antifrode di OpenPay non si sono caricati nel browser, oppure non è stato possibile creare l'ID di sessione del dispositivo. Chiedi al cliente di ricaricare la pagina e riprovare.
Il cliente vede The payment could not be processed right now: OpenPay ha rifiutato la richiesta o non ha risposto. Il motivo è nel log e nelle note dell'ordine. Una causa tipica è un Merchant ID o una chiave privata errati. Se OpenPay non ha risposto, controlla l'addebito nella dashboard OpenPay prima che il cliente paghi di nuovo.
Il cliente vede This test card cannot be used for real payments: è stata usata una carta di test sandbox mentre la modalità sandbox è disattivata.
Il cliente vede Billing email is required for OpenPay: l'ordine non ha un indirizzo e-mail valido.
L'ordine è nello stato OpenPay Payment On Hold dopo il pagamento: leggi le OpenPay notes nella scheda (vedi Stati degli ordini), poi evadi l'ordine oppure rimborsa il pagamento.
Il rimborso non riesce con un messaggio sulla modalità: l'ordine è stato pagato in modalità sandbox o live, e le chiavi di quella modalità non sono impostate. Inseriscile e riprova.
Il rimborso non riesce con The order is being updated right now: un webhook o un'altra richiesta stava aggiornando l'ordine nello stesso momento. Riprova tra poco.
Disinstallazione
Vai su Extensions > Extensions, scegli il tipo Payments e fai clic su Uninstall (il pulsante rosso −) accanto a VibeFox OpenPay Gateway. La chiave di licenza e lo stato della licenza di questa estensione vengono sempre rimossi. OpenCart rimuove sempre le proprie impostazioni dell'estensione: Enable / Disable, Sort Order, Geo Zone, Total e gli stati degli ordini della sezione Orders, che tornano ai valori predefiniti in caso di reinstallazione. Viene rimosso anche l'evento OpenCart dell'estensione (su OpenCart 4 i suoi eventi e la sua azione di avvio, che lascia passare il webhook e il ritorno da 3D Secure in modalità manutenzione). Se Delete data on uninstall è attivo, vengono eliminate le altre impostazioni del gateway (titolo, descrizione, Paese del conto, modalità sandbox, chiavi, registrazione), il codice di verifica del webhook salvato e il log. Se è disattivo, vengono conservate per una reinstallazione successiva. I registri degli addebiti e dei rimborsi OpenPay vengono sempre conservati, così gli ordini pagati in precedenza possono essere rimborsati anche dopo una reinstallazione. Gli ordini esistenti conservano le proprie note di pagamento.
Su OpenCart 4, per rimuovere anche i file dell'estensione, vai su Extensions > Installer dopo la disinstallazione e fai clic su Uninstall (il pulsante arancione −) accanto a VibeFox OpenPay Gateway nell'elenco delle estensioni installate, poi su Delete (il pulsante rosso con il cestino) per rimuovere il pacchetto caricato.
OpenPay è un marchio del rispettivo titolare. Questa estensione non è affiliata né approvata da OpenPay.
