VibeFox Midtrans for OpenCart — Guida
Requisiti
OpenCart: 3.0.x (testato con 3.0.5.0) o 4.0.2 e successive (testato con 4.1.0.3).
PHP: 8.0 o successivo.
Valuta: Rupia indonesiana (IDR). Midtrans addebita solo in IDR, quindi il metodo di pagamento viene offerto solo quando la valuta del checkout è IDR. Non c'è conversione di valuta. Aggiungi la valuta IDR in System > Localisation > Currencies se il tuo negozio non l'ha.
Account Midtrans: ti serve la Server Key da Midtrans Dashboard > Settings > Access Keys, nella dashboard sandbox e in quella di produzione. Viene usata solo la Server Key. La Client Key non serve per Snap Redirect. I metodi di pagamento veri e propri (GoPay, QRIS, conti virtuali e altri) si abilitano nel tuo account Midtrans.
Chiave di licenza VibeFox: acquistata su vibefox.net. Una chiave funziona su un solo dominio.
Installazione
L'archivio da scaricare è un unico file zip con i pacchetti per entrambe le versioni di OpenCart. Decomprimilo sul tuo computer. Contiene README.txt, il pacchetto per OpenCart 3 wcp_midtrans_payment_gateway-oc3-(version).ocmod.zip e il pacchetto per OpenCart 4 wcp_midtrans_payment_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, clicca su Upload e scegli il file wcp_midtrans_payment_gateway-oc3-(version).ocmod.zip. L'estensione non ha modifiche OCMOD, quindi Extensions > Modifications non deve essere aggiornato. Invece dell'installer puoi copiare il contenuto della cartella upload di questo pacchetto nella cartella radice del tuo negozio.
2. Vai su Extensions > Extensions e scegli il tipo Payments. Trova VibeFox Midtrans Payment Gateway e clicca su Install (il pulsante verde +). Il tuo utente amministratore deve avere il permesso di modificare l'elenco delle estensioni di pagamento.
3. Clicca su Edit (il pulsante a forma di 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 clicca su Activate (vedi Chiave di licenza).
4. Inserisci le Server Key e copia l'URL di notifica del pagamento nella dashboard di Midtrans (vedi Configurazione).
5. Attiva Enable/Disable e clicca su Save. Prova in Sandbox, poi imposta Environment su Production.
OpenCart 4
1. Nel pannello di amministrazione vai su Extensions > Installer, clicca su Upload e scegli il file wcp_midtrans_payment_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. Clicca su Install (il pulsante verde +) accanto ad esso.
3. Vai su Extensions > Extensions e scegli il tipo Payments. Trova VibeFox Midtrans Payment Gateway, clicca su Install (il pulsante verde +), poi su Edit (il pulsante a forma di matita).
4. Inserisci la chiave di licenza, le Server Key e l'URL di notifica come nei passaggi 3–5 per OpenCart 3. La pagina delle impostazioni e i suoi campi sono uguali in entrambe le versioni. Cambia solo l'URL di notifica (vedi Configurazione).
Una nuova installazione parte con il metodo di pagamento disattivato e l'ambiente Sandbox selezionato.
Configurazione
Tutte le impostazioni si trovano nella pagina dell'estensione: Extensions > Extensions > Payments > VibeFox Midtrans Payment 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 manca la Server Key dell'ambiente selezionato (in tal caso il metodo di pagamento viene nascosto al checkout) e quando la valuta predefinita del negozio non è IDR, e mostra Sandbox mode: payments are simulated, no real money is charged. mentre è selezionato Sandbox. Senza il permesso di modificare l'estensione, la pagina mostra le impostazioni ma non può salvarle.
Al salvataggio, Title deve avere da 1 a 128 caratteri, Sort Order deve essere un numero intero, Total deve essere un numero maggiore o uguale a 0 e Payment page expiry (minutes) deve essere un numero intero. Se un valore è errato, la pagina mostra l'errore e non viene salvato nulla.
Midtrans
Enable/Disable: Enable Midtrans payments attiva o disattiva il metodo di pagamento. Predefinito: disattivato.
Title: il titolo del metodo di pagamento mostrato al cliente al checkout. È anche il nome del metodo di pagamento salvato nell'ordine. Predefinito: Midtrans. Obbligatorio.
Description: il testo mostrato al cliente nel passaggio Confirm Order, sopra il pulsante di conferma. Predefinito: Pay securely via Midtrans — GoPay, QRIS, ShopeePay, cards, bank transfer and more. In Sandbox sopra viene mostrata la riga SANDBOX MODE: no real money is charged.
Sort Order: la posizione di Midtrans tra i metodi di pagamento al checkout. Lascia vuoto o inserisci un numero intero.
Geo Zone: offri Midtrans solo per gli indirizzi di pagamento della zona geografica selezionata. Predefinito: All zones. Le zone geografiche si configurano in System > Localisation > Geo Zones.
Total: il totale del checkout, nella valuta predefinita del negozio, che un ordine deve raggiungere prima che venga offerto Midtrans. Lascia vuoto per offrire Midtrans per qualsiasi importo.
Credenziali API
Copia la Server Key da Midtrans Dashboard > Settings > Access Keys. La sezione contiene i collegamenti alla dashboard di produzione e a quella sandbox.
Environment: l'ambiente Midtrans che usano i nuovi pagamenti. Cambiando ambiente si usano la chiave e l'API dell'ambiente selezionato. Gli ordini conservano l'ambiente in cui sono stati pagati, per rimborsi e notifiche. Predefinito: Sandbox.
Production Server Key: inizia con Mid-server-. Tienila segreta.
Sandbox Server Key: inizia con SB-Mid-server-.
Le chiavi 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 salvata, spunta Clear the saved key on save sotto il campo e clicca su Save.
URL di notifica del pagamento
La notifica comunica al tuo negozio che un pagamento è stato effettuato. Il campo Notification URL mostra l'URL da usare. Su OpenCart 3 ha un aspetto del tipo https://your-store/index.php?route=extension/payment/wcp_midtrans_payment_gateway/webhook, su OpenCart 4 così: https://your-store/index.php?route=extension/wcp_midtrans_payment_gateway/payment/wcp_midtrans_payment_gateway.webhook. È costruito dall'indirizzo della vetrina della tua installazione di OpenCart. Copia l'URL esattamente come lo mostrano le impostazioni e incollalo in Midtrans Dashboard > Settings > Payment > Notification URL, nella dashboard sandbox e in quella di produzione che usi. L'URL deve essere raggiungibile da internet. Se lo apri nel browser, mostra una breve spiegazione, così puoi verificare che sia raggiungibile. Anche il pulsante Test notification URL della dashboard di Midtrans riceve risposta.
Ogni notifica deve avere una firma valida creata con una delle tue Server Key, e l'ambiente della chiave deve corrispondere a quello del pagamento. Le notifiche senza una firma valida vengono rifiutate. Lo stato viene poi riletto dall'API di stato di Midtrans prima che l'ordine cambi. L'estensione gestisce questi stati delle transazioni Midtrans:
Senza l'URL di notifica, un ordine viene confermato solo quando il cliente torna nel negozio dopo aver pagato, e un pagamento differito effettuato più tardi non viene visto finché il cliente non torna.
Impostazioni di pagamento
Midtrans addebita solo in IDR, e gli importi vengono inviati in rupie intere. Se le righe dell'ordine non corrispondono al totale arrotondato, viene inviata a Midtrans una riga di Rounding adjustment.
Payment page expiry (minutes): per quanto tempo il cliente può pagare (pagina Snap, conto virtuale e così via). Lascia vuoto o 0 per il valore predefinito di Midtrans.
Order ID prefix: viene aggiunto al numero inviato a Midtrans, così più negozi possono condividere un unico account Midtrans. Il numero è l'ID ordine di OpenCart con un marcatore temporale, per esempio OC-123-1700000000. Sono ammessi solo lettere, cifre e - _ . ~, fino a 20 caratteri; gli altri caratteri vengono rimossi al salvataggio. Le notifiche di altri negozi vengono ignorate. Predefinito: OC-.
Ordini
OpenCart crea l'ordine nel passaggio Confirm Order senza stato (un ordine incompleto). L'ordine riceve uno stato solo dopo che Midtrans ha confermato la transazione. Ciascuno dei campi seguenti elenca i tuoi stati ordine di OpenCart.
Status after payment: lo stato dopo un pagamento confermato. Predefinito: In lavorazione. Scegli uno stato completato per segnare come completati gli ordini pagati, oppure un tuo stato di verifica per controllare manualmente ogni ordine pagato.
Awaiting Midtrans payment status: Midtrans segnala pending: è stato emesso un conto virtuale, un codice per minimarket o QRIS, oppure una verifica 3-D Secure della carta non è conclusa. Predefinito: In sospeso.
Midtrans payment on hold status: il pagamento richiede la tua verifica (vedi Stati dell'ordine). Predefinito: In sospeso, perché OpenCart non ha lo stato On hold. Puoi creare un tuo stato in System > Localisation > Order Statuses e selezionarlo qui.
Payment failed status: Midtrans segnala deny o failure per un ordine in attesa. Predefinito: Non riuscito.
Payment expired / cancelled status: la transazione in sospeso di un ordine in attesa è scaduta o è stata annullata. Quando imposti tu stesso su questo stato un ordine Midtrans non pagato, la sua transazione Midtrans in sospeso (per esempio un conto virtuale emesso) viene fatta scadere, così non può più essere pagata. Predefinito: Annullato.
Refunded status: il pagamento è stato rimborsato per intero dalla pagina dell'ordine o nella dashboard di Midtrans. Predefinito: Rimborsato.
Avanzate
Debug log: scrive le chiamate API e le notifiche in midtrans_p_debug.log.php, nella cartella dei log di OpenCart (storage/logs). Il file non può essere aperto dal web. Gli errori vengono sempre registrati. Chiavi e dati dei clienti non vengono mai registrati. Predefinito: disattivato.
Log: mostra la dimensione e le ultime voci del log. Clicca su Clear log per svuotarlo.
Delete data on uninstall: se attivo, la disinstallazione dell'estensione rimuove le impostazioni del gateway e il log. I riferimenti dei pagamenti Midtrans e i rimborsi degli ordini restano sempre, quindi gli ordini vecchi possono ancora essere rimborsati dopo una reinstallazione. Predefinito: disattivato.
Importa / Esporta
Export: Download JSON salva le impostazioni in un file JSON. Le Server Key non vengono esportate.
Import: incolla il JSON esportato in precedenza e clicca su Import per ripristinare le impostazioni. Le Server Key salvate vengono mantenute.
Checkout
Al passaggio Payment Method il cliente sceglie il metodo di pagamento (per impostazione predefinita Midtrans). Nel passaggio Confirm Order il cliente vede la tua descrizione e la nota You will be redirected to the Midtrans payment page (GoPay, QRIS, ShopeePay, cards, bank transfer and more). OpenCart crea l'ordine in questo passaggio, ancora senza stato. Quando il cliente clicca su Confirm Order, l'estensione crea una transazione Midtrans Snap per il totale dell'ordine in rupie intere, con le righe dell'ordine, la spedizione, gli sconti, le imposte e i dati di fatturazione e spedizione del cliente, e invia il cliente alla pagina di pagamento di Midtrans. Lì il cliente sceglie uno qualsiasi dei metodi abilitati nel tuo account Midtrans. Su OpenCart 4 il cliente sceglie il metodo di pagamento con il pulsante Choose nel blocco del metodo di pagamento, nella finestra Payment method options, e clicca su Confirm Order in fondo alla pagina di checkout.
Dopo il pagamento, il cliente torna nel tuo negozio. Il link di ritorno non segna mai un ordine come pagato: l'ordine viene segnato come pagato solo dopo la conferma di Midtrans, tramite la notifica firmata o tramite una richiesta all'API di stato di Midtrans quando il cliente torna. L'ordine riceve poi il suo stato nel modo standard di OpenCart, con le consuete e-mail d'ordine e l'aggiornamento delle scorte, e il cliente vede la pagina di successo dell'ordine di OpenCart. Per un pagamento differito la pagina mostra anche We are waiting for Midtrans to confirm your payment. If you chose a bank transfer, virtual account or convenience store, please complete the payment using the instructions from Midtrans. You will receive an e-mail once the payment is confirmed. Se Midtrans non è raggiungibile quando il cliente torna, una pagina Payment confirmation mostra We are confirming your payment with Midtrans. The order will be updated automatically — please do not pay again. con un pulsante Check again e un pulsante Back to checkout.
Se il cliente ha lasciato la pagina Snap senza pagare, torna al checkout con The Midtrans payment was not completed. You can try again below. Se il pagamento è stato rifiutato o è scaduto, il messaggio è Your Midtrans payment was declined or has expired. Please try again or choose another payment method. Su OpenCart 4 questi messaggi compaiono sopra la pagina di checkout. Il carrello viene conservato. OpenCart 3 crea un nuovo ordine ogni volta che viene mostrato il passaggio Confirm Order, mentre OpenCart 4 mantiene un ordine per il checkout e, quando si paga di nuovo, usa lo stesso ordine. In ogni caso l'estensione tratta tutti gli ordini di un unico carrello come un unico pagamento: quando il cliente paga di nuovo, viene riutilizzato uno Snap non usato o in sospeso dello stesso importo (un conto virtuale già emesso resta valido); se l'importo è cambiato, prima la transazione in sospeso viene fatta scadere su Midtrans; se nel frattempo uno Snap precedente è stato pagato, quel pagamento viene confermato e il cliente va alla pagina di successo senza una nuova transazione.
Su OpenCart 4 l'ordine resta nel checkout finché non viene mostrata la pagina di successo. Se nel frattempo l'ordine è stato chiuso senza pagamento (per esempio perché il pagamento è stato rifiutato o è scaduto, oppure hai annullato l'ordine), il cliente torna al checkout con Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order., e il successivo Confirm Order paga un nuovo ordine. Se l'ordine è già stato inserito e il carrello è cambiato da allora, il messaggio è Your previous order #(numero) has already been placed. Your cart has changed: please confirm the new order to pay for it. Una modifica del carrello, compresa una nuova quantità, conta come un nuovo carrello che richiede un proprio pagamento. Se il pagamento di un ordine è stato rifiutato o è scaduto dopo che il carrello era già stato svuotato (per esempio dopo un pagamento con conto virtuale), il cliente vede The Midtrans payment of order #(numero) was declined or has expired, so the order will not be shipped. To buy these items, please place a new order.
Se Midtrans non riesce ad avviare il pagamento, il cliente resta al passaggio Confirm Order con un breve messaggio sopra il pulsante: Could not connect to Midtrans. Please try again in a moment., Midtrans payments are temporarily unavailable. Please choose another payment method or contact us. (per esempio con una Server Key errata) oppure il motivo indicato da Midtrans. Il motivo tecnico viene scritto nel log.
La notifica funziona anche quando il negozio è in modalità manutenzione: OpenCart 3 lascia passare le richieste delle estensioni di pagamento, e su OpenCart 4 l'estensione aggiunge per essa un'azione di avvio (startup action), che lascia passare anche il ritorno del cliente da Midtrans.
L'estensione usa solo Snap Redirect. Non ha pop-up Snap, né modulo della carta sul tuo sito, né carte salvate o pagamenti con un clic, né impostazioni di rate o promozioni (i metodi di pagamento si configurano nella dashboard di Midtrans), né abbonamenti. I pagamenti con carta vengono incassati subito, senza autorizzazione e cattura separate.
Ordini e rimborsi
Stati dell'ordine
No status (missing order): il cliente è stato inviato a Midtrans e non ha ancora pagato, oppure Midtrans non ha ancora confermato il pagamento. In Sales > Orders questi ordini vengono mostrati solo con il filtro Order Status impostato su Missing Orders.
Awaiting Midtrans payment status (predefinito In sospeso): il cliente ha scelto un metodo con pagamento differito o ha avviato un pagamento con carta non ancora concluso. Quando Midtrans segnala il pagamento, l'ordine passa a Status after payment.
Status after payment (predefinito In lavorazione): il pagamento è stato confermato. Una nota mostra il metodo di pagamento, l'ID ordine Midtrans e la transazione.
Midtrans payment on hold status (predefinito In sospeso): un pagamento con carta è in verifica antifrode (challenge, nessun importo ancora registrato), l'importo o la valuta pagati non corrispondono all'ordine (l'ordine non viene segnato come pagato), oppure è arrivato un pagamento per un ordine annullato (l'ordine non viene riaperto automaticamente). La nota lo spiega. Controlla l'ordine, poi evadilo o rimborsa il pagamento.
Payment expired / cancelled status (predefinito Annullato): la transazione non pagata di un ordine in attesa è scaduta o è stata annullata.
Payment failed status (predefinito Non riuscito): il pagamento non è riuscito, oppure un pagamento con carta sottoposto a verifica è stato negato.
Refunded status (predefinito Rimborsato): il pagamento è stato rimborsato per intero.
OpenCart informa il cliente di questi cambi di stato nel modo consueto. Se per lo stesso carrello arriva un secondo pagamento, l'ordine non cambia. Una nota sull'ordine pagato ti chiede di rimborsare il secondo pagamento nella dashboard di Midtrans. Un pagamento per un ordine già rimborsato aggiunge solo una nota.
Le note sono voci della History dell'ordine che il cliente non vede.
Scheda VibeFox Midtrans Payment Gateway
In Sales > Orders apri un ordine pagato con Midtrans. In fondo alla pagina dell'ordine, accanto a History e Additional, la scheda VibeFox Midtrans Payment Gateway mostra il Midtrans order ID, il Transaction ID (collegato alla transazione nella dashboard Midtrans dell'ambiente del pagamento) con l'etichetta Sandbox per i pagamenti sandbox, il Payment method, lo Status, gli importi Paid / refunded, il modulo di rimborso, lo storico dei rimborsi e le Midtrans notes dell'ordine. La scheda viene mostrata agli utenti che hanno accesso all'estensione.
Rimborsi
Nella scheda VibeFox Midtrans Payment Gateway inserisci l'Amount (viene precompilato l'importo non ancora rimborsato), facoltativamente un Reason (optional), e clicca su Refund via Midtrans. Conferma la domanda Refund this amount through Midtrans? This cannot be undone. Sono supportati rimborsi totali e parziali in rupie intere; un importo con decimali viene rifiutato. Ti serve il permesso di modificare l'estensione (impostato in System > Users > User Groups). Puoi rimborsare fino all'importo effettivamente addebitato da Midtrans, anche se l'ordine è stato modificato in seguito. Il rimborso viene inviato nell'ambiente in cui è stato effettuato il pagamento, quindi la Server Key di quell'ambiente deve essere impostata. Midtrans consente i rimborsi via API solo per alcuni metodi di pagamento e per transazioni regolate. Se Midtrans non accetta il rimborso, la scheda mostra l'errore e non viene registrato alcun rimborso; in tal caso rimborsa dalla dashboard di Midtrans. Un rimborso riuscito viene aggiunto allo storico dei rimborsi e alle note. Un rimborso totale imposta l'ordine su Refunded status senza avvisare il cliente e senza riportare i prodotti in magazzino, come una modifica manuale dello stato. Un rimborso parziale non cambia lo stato. I rimborsi sono disponibili solo dopo che Midtrans ha segnalato il pagamento come regolato.
Le restituzioni di prodotti in Sales > Returns non rimborsano denaro tramite Midtrans.
I rimborsi effettuati nella dashboard di Midtrans arrivano tramite notifica e vengono aggiunti automaticamente allo storico dei rimborsi, con il motivo Refunded in the Midtrans dashboard. Quando lì viene rimborsato l'intero pagamento, l'ordine riceve lo Refunded status.
Chiave di licenza
L'estensione funziona con una chiave di licenza VibeFox acquistata su vibefox.net. Il blocco della licenza License — VibeFox Midtrans Payment Gateway è il primo blocco di Extensions > Extensions > Payments > VibeFox Midtrans Payment Gateway > Edit, sopra le impostazioni. Incolla la chiave in License key e clicca 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 controllare di nuovo lo stato, Change key per inserire un'altra chiave e Remove key per rimuovere la chiave da questo negozio. Sotto ci sono la riga Product: opencart-payment-midtrans e il collegamento 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 o License expired on seguito da una data. Dopo aver cambiato l'indirizzo del negozio, o dopo aver liberato uno slot di dominio nel tuo account, clicca 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 della configurazione di OpenCart. Rimuovere la chiave dal negozio non libera il suo slot di dominio. Liberalo nel tuo account vibefox.net.
Senza una chiave attiva, Midtrans non viene mostrato ai clienti al 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 il login dell'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 vengono comunque confermati e i rimborsi funzionano.
Quando una licenza scade, l'estensione continua a funzionare, ma aggiornamenti e supporto richiedono il rinnovo. Lo stato viene controllato di nuovo automaticamente quando apri la Dashboard o la pagina Edit dell'amministrazione: una volta al giorno per i primi 14 giorni dopo l'inserimento della chiave, poi una volta alla settimana. Non serve alcun cron job. La disinstallazione dell'estensione rimuove sempre la chiave di licenza e lo stato della licenza.
Risoluzione dei problemi
Midtrans non compare al checkout: controlla che la licenza sia attiva, che Enable/Disable sia attivo e che il Environment selezionato abbia la sua Server Key. Controlla che la valuta del checkout sia IDR, che l'indirizzo di pagamento rientri nella Geo Zone selezionata e che l'ordine raggiunga il Total impostato nelle impostazioni. La pagina delle impostazioni mostra un avviso quando la chiave manca o la valuta del negozio non è IDR.
Il pagamento è andato a buon fine, ma l'ordine resta senza stato: la notifica non funziona. Controlla che l'URL di notifica del pagamento sia impostato nella dashboard di Midtrans dell'ambiente che usi (sandbox o produzione), che sia esattamente l'URL mostrato in Notification URL e che sia raggiungibile: aprilo nel browser, mostra una breve spiegazione. Attiva Debug log per vedere le notifiche. L'ordine riceve comunque il suo stato quando il cliente torna nel negozio dopo aver pagato.
La notifica risponde Invalid signature: la notifica non è stata firmata con la tua Server Key Sandbox o Production. Controlla che le chiavi nelle impostazioni appartengano allo stesso account Midtrans della dashboard che invia le notifiche.
La notifica risponde Server key not configured: non è impostata alcuna Server Key. Inseriscila nelle impostazioni; Midtrans ripeterà la notifica.
La notifica risponde Order not found — ignored: l'ID ordine Midtrans non è stato emesso da questo negozio, per esempio da un altro negozio sullo stesso account Midtrans. Assegna a ogni negozio un Order ID prefix diverso.
La notifica risponde Environment mismatch — ignored: la notifica è stata firmata con la chiave dell'altro ambiente rispetto a quello in cui è stato effettuato il pagamento.
La notifica risponde Verification failed, please retry: l'API di stato di Midtrans non era raggiungibile. Midtrans ripeterà la notifica.
La notifica risponde Busy, please retry: il carrello era in aggiornamento da un'altra richiesta nello stesso momento, oppure non è stato possibile impostare lo stato dell'ordine. Midtrans ripeterà la notifica. Controlla il log per il motivo.
L'ordine è nello stato di verifica: leggi le Midtrans notes nella scheda. Il pagamento con carta è in verifica antifrode, l'importo o la valuta pagati non corrispondevano all'ordine, oppure il pagamento è arrivato dopo l'annullamento dell'ordine.
Il cliente vede un errore dopo Confirm Order: controlla il campo Log nella pagina dell'estensione; gli errori vengono sempre registrati. Una Server Key errata produce il messaggio che i pagamenti Midtrans sono temporaneamente non disponibili. Midtrans only supports payments in IDR (Indonesian Rupiah). Please choose another payment method. significa che l'ordine non è in IDR. This payment method is not available. significa che la sessione di checkout non corrisponde più all'ordine, oppure che il metodo di pagamento è stato disattivato nel frattempo: il cliente deve ricaricare il checkout.
Il cliente torna al checkout con Payment verification failed.: il link di ritorno era incompleto o non appartiene all'ordine. L'ordine riceve comunque il suo stato dalla notifica.
Nessun modulo di rimborso nella scheda: la scheda indica il motivo: il pagamento non è ancora regolato, è stato rimborsato per intero, il tuo gruppo utenti non ha il permesso di modificare l'estensione, oppure non è impostata alcuna Server Key per l'ambiente in cui è stato pagato l'ordine.
Il rimborso non riesce: il metodo di pagamento o lo stato della transazione non consente rimborsi via API; rimborsa dalla dashboard di Midtrans, e il rimborso verrà registrato automaticamente sull'ordine.
Per gli sviluppatori: prima che la transazione Snap venga creata, l'estensione attiva l'evento OpenCart midtrans_p_snap_payload con i dati della richiesta e l'ordine; l'ID ordine e l'importo non possono essere modificati.
Disinstallazione
Vai su Extensions > Extensions, scegli il tipo Payments e clicca su Uninstall (il pulsante rosso −) accanto a VibeFox Midtrans Payment 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 alla reinstallazione. Vengono rimossi anche gli eventi OpenCart dell'estensione (su OpenCart 4 anche la sua azione di avvio (startup action), che lascia passare le notifiche in modalità manutenzione). Se Delete data on uninstall è attivo, vengono rimosse le altre impostazioni del gateway (titolo, descrizione, ambiente, Server Key, impostazioni di pagamento, registrazione) e il log. Se è disattivato, vengono conservate per una reinstallazione successiva. I riferimenti dei pagamenti Midtrans e i rimborsi degli ordini restano sempre, quindi gli ordini pagati in precedenza possono ancora essere rimborsati dopo una reinstallazione. Gli ordini esistenti conservano le proprie note di pagamento.
Su OpenCart 4, per rimuovere anche i file dell'estensione, dopo la disinstallazione vai su Extensions > Installer e clicca su Uninstall (il pulsante arancione −) accanto a VibeFox Midtrans Payment Gateway nell'elenco delle estensioni installate, poi su Delete (il pulsante rosso con il cestino) per rimuovere il pacchetto caricato.
Midtrans è un marchio del rispettivo proprietario. Questa estensione non è affiliata né approvata da Midtrans.
