Reso semplice - senza domande
Installa, configura e guadagna
Priorita ad aiuto e soddisfazione
MPR Cassa Revolution
Semplifica il checkout con il pagamento express in una sola pagina
MPR Checkout Revolution abilita il checkout express da qualsiasi pagina del tuo negozio — pagine prodotto, carrello, mini-carrello — usando Apple Pay, Google Pay, PayPal, Link by Stripe e carte. I clienti saltano completamente il flusso di checkout tradizionale e acquistano in pochi secondi.
- Checkout express ovunque: Pulsanti di pagamento su pagine prodotto, carrello e mini-carrello — non solo al checkout
- Apple Pay e Google Pay: Checkout biometrico con un tocco — acquisto in meno di 5 secondi su mobile
- PayPal Express: Cattura i clienti che preferiscono PayPal senza reindirizzamento a pagine esterne
- Link by Stripe: Gli utenti Stripe di ritorno acquistano con un singolo click — tutto precompilato
- Spedizione dinamica: Calcolo spedizione in tempo reale all'interno dei fogli di pagamento
- Creazione indirizzo automatica: Indirizzi dai metodi di pagamento salvati automaticamente — nessun modulo
- Checkout ospite: Nessun account richiesto — acquisto senza registrazione
- Sincronizzazione webhook: Pagamenti, rimborsi e contestazioni gestiti tramite webhook Stripe
- Conforme PCI DSS: Dati carta gestiti esclusivamente dall'infrastruttura certificata Stripe
- Multi-valuta: Accetta pagamenti in qualsiasi valuta supportata da Stripe
L'integrazione Stripe più avanzata per PrestaShop. Aumento del tasso di conversione del 30–60% su mobile. Compatibile con PrestaShop 1.7 fino a 9.x.
Checkout express da qualsiasi pagina — Salta completamente il carrello
MPR Checkout Revolution è un modulo PrestaShop di punta che reinventa radicalmente l'esperienza di checkout. L'e-commerce tradizionale costringe i clienti attraverso un flusso a più passaggi: aggiungi al carrello, visualizza carrello, procedi al checkout, inserisci dati di spedizione, inserisci dati di pagamento, conferma ordine. Ogni passaggio in questo funnel è un punto in cui i clienti abbandonano il loro acquisto — e i dati del settore mostrano che il 70% dei carrelli viene abbandonato prima del completamento.
Checkout Revolution elimina questa frizione abilitando il checkout express da qualsiasi pagina del tuo negozio. Pagine prodotto, pagine categoria, pagina carrello, dropdown mini-carrello — ovunque un cliente decida di voler acquistare, i pulsanti di checkout express Stripe gli permettono di completare l'acquisto in pochi secondi usando Apple Pay, Google Pay, PayPal, Link by Stripe o dettagli carta salvati. Nessuna creazione account, nessun modulo su più pagine, nessuna frizione.
Questo non è un semplice modulo gateway di pagamento. È una completa riprogettazione del flusso d'acquisto che porta l'esperienza di checkout al cliente anziché costringere il cliente a passare attraverso il checkout. Il risultato sono tassi di conversione drasticamente più alti, minor abbandono del carrello e un'esperienza d'acquisto che eguaglia la velocità e la comodità che i clienti si aspettano dalle migliori piattaforme e-commerce al mondo.
Funzionalità e vantaggi principali
- Pulsanti checkout express ovunque: Pulsanti Apple Pay, Google Pay, PayPal e Link by Stripe appaiono direttamente sulle pagine prodotto, pagine carrello e nel mini-carrello. I clienti possono completare un acquisto da qualsiasi pagina dove vedono un prodotto che desiderano.
- Checkout mobile con un tocco: Su dispositivi mobile con Apple Pay o Google Pay configurati, i clienti possono acquistare con una singola autenticazione biometrica (Face ID, Touch ID, impronta digitale) — il percorso più veloce possibile da "lo voglio" a "l'ho comprato."
- Stripe Payment Element: Per i clienti che preferiscono il pagamento tradizionale con carta, lo Stripe Payment Element incorporato fornisce un modulo carta sicuro e bello con validazione in tempo reale, rilevamento automatico del tipo di carta e supporto per l'autenticazione 3D Secure.
- Link by Stripe: I clienti di ritorno che hanno usato il servizio Link di Stripe su qualsiasi sito web possono fare checkout con un singolo click — indirizzo di spedizione, email e metodo di pagamento vengono precompilati automaticamente.
- Calcolo spedizione dinamico: Il checkout express calcola automaticamente i costi di spedizione in base all'indirizzo di consegna del cliente (ottenuto da Apple Pay, Google Pay o PayPal), presentando totali accurati prima della conferma del pagamento.
- Creazione indirizzo automatica: Gli indirizzi dei clienti dai metodi di pagamento express vengono automaticamente salvati nel loro account PrestaShop, creando un'esperienza fluida per gli acquisti ripetuti.
- Supporto checkout ospite: I clienti possono completare il checkout express senza creare un account PrestaShop. Un account viene opzionalmente creato in background usando l'email dal loro metodo di pagamento.
- Sincronizzazione carrello e ordine: Gli acquisti tramite checkout express aggiornano correttamente le regole carrello, gli sconti e i livelli di stock di PrestaShop. Conferme ordine, email e aggiustamenti inventario funzionano esattamente come con il checkout standard.
- Gestione ordini tramite webhook: I webhook Stripe gestiscono conferma pagamento, rimborsi, contestazioni ed eventi di abbonamento, assicurando che la gestione ordini resti sincronizzata anche se il browser del cliente si disconnette durante il pagamento.
- Supporto multi-valuta: Accetta pagamenti in qualsiasi valuta supportata da Stripe. La presentazione dinamica della valuta mostra ai clienti i prezzi nella loro valuta locale.
L'impatto sulla conversione
Ogni click tra la scoperta del prodotto e il completamento del pagamento riduce la conversione del 10–15%. Un checkout PrestaShop standard richiede un minimo di 5–7 click. Il checkout express riduce questo a 1–2 interazioni. La matematica è convincente: i negozi che implementano il checkout express riportano aumenti del tasso di conversione del 30–60% su mobile e del 15–30% su desktop.
Le conversioni Apple Pay e Google Pay sono particolarmente notevoli su dispositivi mobile, dove la compilazione tradizionale dei moduli è macchinosa. Un cliente che naviga il tuo negozio dal telefono vede un prodotto che desidera, tocca il pulsante Apple Pay, conferma con Face ID e l'ordine è effettuato — tutto in meno di 5 secondi. Questo non è un miglioramento incrementale; è una trasformazione fondamentale dell'esperienza d'acquisto mobile.
L'integrazione PayPal cattura il segmento significativo di clienti che preferiscono PayPal per gli acquisti online. Link by Stripe cattura gli utenti Stripe di ritorno che hanno già salvato i propri dati. Insieme, questi quattro metodi di pagamento express coprono virtualmente ogni preferenza del cliente, assicurando che indipendentemente da come un cliente preferisca pagare, possa farlo con frizione minima da qualsiasi pagina del tuo negozio.
Integrazione Stripe avanzata
Checkout Revolution è costruito sull'ultima Payment Intents API e Payment Element di Stripe, fornendo l'integrazione Stripe più attuale, sicura e ricca di funzionalità disponibile per PrestaShop. Questo include la piena conformità PCI DSS (i dati sensibili della carta non toccano mai il tuo server), la gestione automatica del 3D Secure per la conformità SCA in Europa e il supporto per la rete di metodi di pagamento in espansione di Stripe.
Il modulo gestisce l'intero ciclo di vita del pagamento Stripe: creazione payment intent, creazione cliente, associazione metodo di pagamento, conferma pagamento, elaborazione eventi webhook, gestione rimborsi e gestione contestazioni. Il tuo dashboard Stripe e il back office PrestaShop restano perfettamente sincronizzati attraverso un'integrazione webhook completa.
Dettagli tecnici
- Stripe Payment Intents API: Elaborazione pagamenti lato server usando l'ultima API Stripe con gestione automatica SCA/3DS e chiavi di richiesta idempotenti per un'elaborazione pagamenti affidabile.
- Payment Request API: I pulsanti checkout express (Apple Pay, Google Pay) usano la W3C Payment Request API tramite l'elemento Payment Request Button di Stripe — nessun SDK aggiuntivo o configurazione necessaria.
- Endpoint webhook: Controller webhook dedicato gestisce payment_intent.succeeded, charge.refunded, charge.dispute.created e altri eventi Stripe critici per una gestione affidabile del ciclo di vita dell'ordine.
- Integrazione carrello AJAX: Il checkout express sulle pagine prodotto crea o aggiorna il carrello PrestaShop via AJAX, assicurando che regole carrello, sconti e validazione stock vengano applicati correttamente prima del pagamento.
- Chiavi di idempotenza: Ogni richiesta di pagamento include chiavi di idempotenza che prevengono addebiti duplicati da problemi di rete, doppi click sul pulsante o refresh della pagina.
- PCI DSS Livello 1: Tutti i dati di pagamento sensibili vengono gestiti esclusivamente dall'infrastruttura certificata PCI di Stripe. Il tuo server non elabora, memorizza o trasmette mai numeri di carta.
- Compatibile multistore: Account Stripe e configurazioni separati per ogni negozio con endpoint webhook indipendenti.
- Compatibile con PrestaShop 1.7, 8.x e 9.x con layer di compatibilità dedicati per ogni versione principale.
Perché questo modulo è unico?
- L'unico modulo PrestaShop che abilita il checkout express da pagine prodotto, carrello e mini-carrello — non solo dalla pagina checkout
- Quattro metodi di pagamento express (Apple Pay, Google Pay, PayPal, Link) che coprono virtualmente ogni preferenza del cliente
- Checkout biometrico con un tocco su mobile (Face ID, Touch ID) — acquisto in meno di 5 secondi
- Il calcolo spedizione dinamico nei fogli di pagamento elimina sorprese sulla spedizione post-pagamento
- La creazione automatica dell'indirizzo dai metodi di pagamento elimina completamente la compilazione manuale dei moduli
- Gestione completa del ciclo di vita Stripe tramite webhook — pagamenti, rimborsi, contestazioni tutti sincronizzati
- L'elaborazione pagamenti idempotente previene addebiti duplicati sotto qualsiasi condizione di rete
Casi d'uso
- Negozi mobile-first: I negozi con oltre il 60% di traffico mobile vedono i maggiori incrementi di conversione dal checkout con un tocco Apple Pay e Google Pay
- Prodotti ad acquisto d'impulso: Moda, beauty, accessori e alimentari dove ridurre la frizione tra "lo voglio" e "l'ho comprato" aumenta direttamente il fatturato
- Negozi con alto tasso di abbandono carrello: Qualsiasi negozio con oltre il 60% di abbandono carrello vedrà un miglioramento immediato eliminando il funnel di checkout a più passaggi
- Acquisti prodotto singolo: I negozi dove i clienti acquistano tipicamente un singolo articolo beneficiano maggiormente del checkout express dalla pagina prodotto che salta completamente il carrello
- Negozi internazionali: Il supporto multi-valuta e la gestione automatica dell'indirizzo rimuovono la frizione per i clienti transfrontalieri
- Abbonamenti e acquisti ripetuti: Il riconoscimento Link by Stripe rende gli acquisti ripetuti senza sforzo per i clienti di ritorno su qualsiasi sito Stripe
-
Riferimentomprcheckoutrevolution
-
In magazzino999 Articoli
-
Compatibilita PrestaShopPS 1.7 – 9.x
-
Modello di prezzoAcquisto singolo
-
Tipo di moduloFront & Back-office
-
Rilevante per GDPRNo
-
Obiettivo di businessAumentare le conversioni
-
Account esterno necessarioNo
-
Complessita del moduloModulo completo
-
Fase del percorso clienteConvertire in acquirenti
-
Funziona con piattaformaNessuna piattaforma esterna
MPR Express Checkout
Integrazione avanzata di Stripe per PrestaShop 1.7.8+ che fornisce il checkout express da qualsiasi pagina. I clienti completano gli acquisti istantaneamente utilizzando portafogli digitali, carte e metodi di pagamento regionali senza il flusso di checkout tradizionale.
Version: 1.7.3 Author: mypresta.rocks License: Commercial PrestaShop Compatibility: 1.6 - 1.7.8.11+
Indice
- Panoramica
- Funzionalita principali
- Metodi di pagamento
- Sistema di temi delle icone
- Architettura
- Schema del database
- Sviluppo
- Configurazione
- Controller Frontend
- Controller Admin
- Punti di integrazione
- Sistema preventivi/RFQ
- Roadmap futura
Panoramica
MPR Express Checkout trasforma l'esperienza e-commerce consentendo acquisti con un clic dalle pagine prodotto, carrello e checkout. Basato sull'API Payment Intents di Stripe, supporta 31+ metodi di pagamento inclusi portafogli digitali, bonifici bancari regionali e soluzioni Buy Now Pay Later.
Il modulo presenta un modal di checkout unificato che consolida la registrazione del cliente, la gestione degli indirizzi, la selezione della spedizione e l'elaborazione dei pagamenti in un'unica interfaccia ottimizzata, riducendo significativamente l'abbandono del carrello e aumentando le conversioni mobili.
Funzionalita principali
Esperienza Express Checkout
- One-Click Purchase: Buy directly from product pages, cart, or any page type
- Unified Modal: Single modal interface for complete checkout flow
- Smart Cart Management: Automatic cart creation, merging, and recovery
- Real-Time Validation: Instant voucher validation and shipping calculation
- Mobile Optimized: Native wallet integration (Apple Pay, Google Pay, Samsung Pay)
Elaborazione dei pagamenti
- Stripe Integration: Full Stripe Payment Intents API support
- 31+ Payment Methods: Wallets, cards, bank transfers, BNPL, and manual methods
- Saved Cards: Secure card storage for repeat purchases
- Payment Recovery: Abandoned payment cart recovery system
- Webhook Processing: Real-time payment status updates
Esperienza cliente
- Social Login: Google, Facebook, Apple, Microsoft authentication
- Guest Checkout: Complete purchases without account creation
- Address Autocomplete: Google Places API integration
- VAT Validation: VIES API integration for EU businesses
- Multi-Language: Translations for 7+ languages (EN, PL, DE, FR, ES, IT, NL)
Funzionalita B2B
- Company Accounts: Multi-user company account support
- VAT Exemption: Tax exemption handling for qualifying businesses
- Purchase Orders: PO number support for credit account payments
- Trade Credit: Credit account payment method
- Quote/RFQ System: Request for Quote workflow with negotiation support
Strumenti di amministrazione
- Dashboard: Transaction overview and performance metrics
- Transaction Management: View and manage all payment transactions
- Refund Processing: Full and partial refund support
- Charge Details: Complete payment and fee breakdown
- Quote Management: Create, edit, and manage customer quotes
- Social Customer Tracking: Monitor social login registrations
- Shipping Service Config: Configure carriers with transit times
- Integrity Checker: Validate module configuration and database
Metodi di pagamento
Il modulo supporta 31 metodi di pagamento in piu categorie, ciascuno con icone dedicate e traduzioni localizzate.
Portafogli e carte (8 metodi)
Portafogli digitali e pagamenti con carta con autorizzazione istantanea:
- Google Pay - Google digital wallet (Chrome browser)
- Apple Pay - Apple digital wallet (Safari/iOS)
- Card - Visa, Mastercard, Amex, JCB, Cartes Bancaires
- PayPal - PayPal wallet and account payments
- Amazon Pay - Amazon account payments
- Link - Stripe Link (saved payment details)
- Samsung Pay - Samsung digital wallet
- Revolut - Revolut digital wallet
Metodi bancari europei (9 metodi)
Metodi di pagamento bancari regionali popolari in Europa:
- iDEAL - Netherlands bank transfer (EUR only)
- Bancontact - Belgian bank payment (EUR only)
- BLIK - Polish mobile payment (PLN only)
- Przelewy24 - Polish online banking (PLN, EUR)
- EPS - Austrian bank transfer (EUR only)
- Multibanco - Portuguese payment system (EUR only)
- Twint - Swiss mobile payment (CHF only)
- Satispay - Italian mobile payment (EUR only)
- MobilePay - Nordic mobile payment (DKK, NOK, SEK, EUR)
Metodi di pagamento asiatici (5 metodi)
Metodi di pagamento popolari nei mercati asiatici:
- Alipay - Chinese digital wallet (CNY, EUR, GBP, USD)
- WeChat Pay - Chinese mobile payment (CNY, EUR, GBP, USD)
- Kakao Pay - Korean mobile payment (KRW only)
- Naver Pay - Korean payment platform (KRW only)
- Payco - Korean digital wallet (KRW only)
Buy Now Pay Later (4 metodi)
Soluzioni di pagamento rateale e differito:
- Klarna - BNPL in 11 currencies (EUR, USD, GBP, SEK, NOK, DKK, CHF, PLN, AUD, NZD, CAD)
- Afterpay / Clearpay - BNPL in 6 currencies (USD, CAD, AUD, NZD, GBP, EUR)
- Alma - French BNPL (EUR, 10 European countries)
- Billie - B2B BNPL (EUR, 7 European countries)
Bonifici bancari e addebito diretto (1 metodo)
Pagamenti diretti da conto bancario:
- SEPA Debit - European direct debit (EUR only)
Metodi manuali/offline (4 metodi)
Metodi di pagamento tradizionali elaborati offline:
- Bank Transfer - Manual bank wire transfer
- Cash on Delivery (COD) - Pay on delivery
- Credit Account - Trade account with credit terms
- Store Pickup - Pay on pickup at physical location
Sistema di temi delle icone
Il modulo include un sistema di icone completo con 8 varianti di tema per abbinarsi a qualsiasi design del negozio:
Temi delle icone (4 schemi di colori)
- Light Mode - Light backgrounds with dark text
- Dark Mode - Dark backgrounds with light text
- Light Accent - Light backgrounds with brand color accents
- Dark Accent - Dark backgrounds with brand color accents
Forme delle icone (2 proporzioni)
- Rectangle - Wide format for checkout pages and payment options lists
- Square - Compact format for payment buttons and unified modal
Configurazione delle icone
- Total Icon Variants: 31 methods × 4 themes × 2 shapes = 248 SVG icons
- Path Structure:
views/img/payment-icons/{shape}/{theme}/{method}.svg - Dynamic Theming: Icons loaded based on admin configuration
- Card Brand Icons: Separate icons for Visa, Mastercard, Amex, JCB, Cartes Bancaires
Percorsi di esempio:
views/img/payment-icons/rectangle/light-mode/google_pay.svg
views/img/payment-icons/square/dark-accent/apple_pay.svg
views/img/payment-icons/rectangle/light-mode/visa.svg
Architettura
Struttura delle directory
mprexpresscheckout/
├── mprexpresscheckout.php # Main module class (3,600+ lines)
├── config.xml # Module metadata
├── composer.json # PHP dependencies
├── package.json # Node.js build tools
├── Gruntfile.js # Grunt task configuration
├── gulpfile.js # Gulp build pipeline
│
├── src/ # Namespaced PHP classes
│ ├── Classes/ # Core business logic (30+ classes, 28K+ lines)
│ │ ├── MPRExpressCheckoutConfig.php # Configuration management
│ │ ├── MPRExpressCheckoutCart.php # Virtual cart handling
│ │ ├── MPRExpressCheckoutTransaction.php # Payment transactions
│ │ ├── MPRExpressCheckoutCharge.php # Stripe charge details
│ │ ├── MPRExpressCheckoutRefund.php # Refund processing
│ │ ├── MPRExpressCheckoutPaymentOption.php # Payment method config
│ │ ├── MPRExpressCheckoutPaymentMethod.php # Saved payment methods
│ │ ├── MPRExpressCheckoutOrderProcessor.php # Order creation logic
│ │ ├── MPRExpressCheckoutAddress.php # Address management
│ │ ├── MPRExpressCheckoutSocialAuth.php # Social login (Google, FB, Apple, MS)
│ │ ├── MPRExpressCheckoutCustomer.php # Customer handling
│ │ ├── MPRExpressCheckoutShippingService.php # Carrier configuration
│ │ ├── MPRExpressCheckoutSession.php # Session tracking
│ │ ├── MPRExpressCheckoutWebhookEvent.php # Stripe webhook handler
│ │ ├── MPRExpressCheckoutVatValidator.php # EU VAT validation
│ │ ├── MPRExpressCheckoutSMS.php # SMS notifications
│ │ ├── MPRExpressCheckoutIntegrity.php # System integrity checks
│ │ ├── MPRExpressCheckoutAdminOrder.php # Admin order creation
│ │ ├── MPRExpressCheckoutDbQuery.php # Database query builder
│ │ ├── MPRExpressCheckoutErrorHandler.php # Error handling
│ │ ├── MPRExpressCheckoutTranslations.php # Translation management
│ │ ├── MPRExpressCheckoutQuote.php # Quote management (ObjectModel)
│ │ ├── MPRExpressCheckoutQuoteItem.php # Quote line items (ObjectModel)
│ │ ├── MPRExpressCheckoutQuoteStatus.php # Quote status workflow (ObjectModel)
│ │ ├── MPRExpressCheckoutQuoteMessage.php # Quote messaging (ObjectModel)
│ │ ├── MPRExpressCheckoutQuoteHistory.php # Quote audit trail (ObjectModel)
│ │ └── MPRExpressCheckoutQuotePdf.php # Quote PDF generation
│ │
│ ├── Config/ # Configuration classes
│ │ ├── PaymentMethodsConfig.php # All payment method definitions
│ │ └── PaymentMethodsTranslations.php # Multi-language translations
│ │
│ └── Traits/ # Reusable trait components
│ ├── AdminController/ # Admin list management traits
│ ├── Compatiblility/ # PrestaShop compatibility
│ ├── ObjectModel/ # ORM extensions
│ └── Associations/ # Database associations
│
├── controllers/ # PrestaShop controllers
│ ├── front/ # Frontend controllers (20 controllers)
│ │ ├── Checkout.php # Main checkout modal
│ │ ├── Processing.php # Payment processing
│ │ ├── Ajax.php # AJAX endpoint handler
│ │ ├── Webhook.php # Stripe webhook receiver
│ │ ├── PaymentStatus.php # Payment status page
│ │ ├── Recover.php # Cart recovery
│ │ ├── Cards.php # Saved cards management
│ │ ├── Login.php # Customer login
│ │ ├── Register.php # Customer registration
│ │ ├── ForgotPassword.php # Password recovery
│ │ ├── Account.php # Customer account
│ │ ├── Identity.php # Personal information
│ │ ├── Address.php # Single address management
│ │ ├── Addresses.php # Address book
│ │ ├── Cart.php # Cart management
│ │ ├── Quotes.php # Customer quotes list
│ │ ├── Quote.php # Single quote detail view
│ │ ├── QuoteRequest.php # Quote request form
│ │ └── QuotePdf.php # Quote PDF download
│ │
│ └── admin/ # Backend controllers (16 controllers)
│ ├── AdminMPRExpressCheckoutDashboardController.php
│ ├── AdminMPRExpressCheckoutConfigController.php
│ ├── AdminMPRExpressCheckoutTransactionsController.php
│ ├── AdminMPRExpressCheckoutChargesController.php
│ ├── AdminMPRExpressCheckoutRefundsController.php
│ ├── AdminMPRExpressCheckoutPaymentOptionsController.php
│ ├── AdminMPRExpressCheckoutPaymentMethodsController.php
│ ├── AdminMPRExpressCheckoutSocialCustomersController.php
│ ├── AdminMPRExpressCheckoutCartsController.php
│ ├── AdminMPRExpressCheckoutSessionsController.php
│ ├── AdminMPRExpressCheckoutShippingServiceController.php
│ ├── AdminMPRExpressCheckoutQuotesController.php
│ ├── AdminMPRExpressCheckoutQuoteStatusesController.php
│ ├── AdminMPRExpressCheckoutIntegrityController.php
│ └── AdminMPRExpressCheckoutAjaxController.php
│
├── views/ # Frontend assets and templates
│ ├── templates/ # Smarty templates
│ │ ├── front/ # Frontend templates
│ │ ├── admin/ # Admin templates
│ │ ├── hook/ # Hook templates
│ │ └── _partials/ # Reusable template components
│ ├── js/ # JavaScript (compiled)
│ ├── css/ # Stylesheets (compiled)
│ └── img/ # Images and icons
│ ├── payment-icons/ # Payment method icons (248 SVG files)
│ │ ├── rectangle/ # Wide format icons
│ │ │ ├── light-mode/
│ │ │ ├── dark-mode/
│ │ │ ├── light-accent/
│ │ │ └── dark-accent/
│ │ └── square/ # Square format icons
│ │ ├── light-mode/
│ │ ├── dark-mode/
│ │ ├── light-accent/
│ │ └── dark-accent/
│ ├── buttons/ # Express checkout button graphics
│ └── options/ # UI element icons
│
├── sources/ # Source files for build
│ ├── js/ # JavaScript source files
│ └── css/ # SCSS source files
│
├── sql/ # Database installation
│ ├── install.php # Table creation (28 tables)
│ └── uninstall.php # Table cleanup
│
├── upgrade/ # Version upgrade scripts
├── translations/ # Language files
├── mails/ # Email templates
├── vendor/ # Composer dependencies
└── node_modules/ # NPM build dependencies
Schema del database
Il modulo crea 34 tabelle del database per gestire tutti gli aspetti del checkout express:
Tabelle principali
mprexpresscheckout_cart - Virtual cart storage
- Stores express checkout sessions with customer data, addresses, and selections
- Includes cart recovery data with expiry dates
- Tracks page context (product, cart, checkout, etc.)
mprexpresscheckout_config - Module configuration
- Key-value storage with context support (shop, language, group)
- Multilingual configuration via
_langtable
mprexpresscheckout_payment_options - Payment method configuration
- Payment method settings and availability
- Context-based restrictions (country, currency, browser, page type)
- Position ordering and Stripe enablement flags
Tabelle transazioni e pagamenti
mprexpresscheckout_transactions - Payment transactions
- Links virtual carts to orders
- Transaction type tracking (express, checkout, terminal, invoice, etc.)
- Payment state management and error tracking
mprexpresscheckout_charges - Stripe charge details
- Payment Intent and Charge IDs
- Fee calculation and exchange rates
- Risk assessment scores
- Receipt URLs and payment method details
mprexpresscheckout_refunds - Refund records
- Full and partial refund tracking
- Employee attribution
- Refund state and reason tracking
mprexpresscheckout_payment_methods - Saved payment methods
- Stored card details (last4, brand, expiry)
- Links to Stripe Customer IDs
Tabelle clienti e Social Login
mprexpresscheckout_customers - Stripe customer mapping
- Links PrestaShop customers to Stripe Customer IDs
- Email tracking for guest customers
mprexpresscheckout_social_customers - Social authentication
- Google, Facebook, Apple, Microsoft account links
- Platform user IDs and profile pictures
mprexpresscheckout_social_logins - Login tracking
mprexpresscheckout_social_registrations - Registration tracking
Tabelle spedizione e consegna
mprexpresscheckout_shipping_service - Carrier configuration
- Transit time estimates (min/max days)
- Display modes and position ordering
- Separate activation flags for express checkout and OPC
mprexpresscheckout_shipping_service_lang - Carrier translations
mprexpresscheckout_shipping_service_payment_options - Payment method restrictions per carrier
mprexpresscheckout_shipping_service_external_modules - Third-party carrier module integration
Tabelle dettaglio carrello virtuale
mprexpresscheckout_cart_customer - Customer information
mprexpresscheckout_cart_product - Cart products
mprexpresscheckout_cart_address - Shipping/billing addresses
mprexpresscheckout_cart_rule - Applied vouchers/discounts
Tabelle sessioni e tracciamento
mpr_sessions - Shared session tracking
- Device, browser, OS detection
- UTM campaign tracking
- Landing page tracking
- IP and user agent storage
mprexpresscheckout_admin_preferences - Admin user preferences
mprexpresscheckout_admin_order - Admin-created orders
mprexpresscheckout_sso_codes - SMS authentication codes
mprexpresscheckout_customer_vat - VAT validation results
Tabelle B2B e aziendali
mpr_customer - Extended customer data
- Default preferences (address, carrier, payment)
- Two-factor authentication settings
- Marketing consent tracking (GDPR compliant)
- Tax exemption status
mpr_company - Company account data
- VAT number and validation
- Company verification status
- Invite links and domain matching
mpr_company_member - Company membership
- Role-based access (admin/member)
- Granular permissions (advanced mode)
- Join method tracking (invite, domain, VAT, admin)
mpr_company_address - Shared company addresses
mpr_company_invite - Email-based company invitations
Tabelle preventivi/RFQ
mprexpresscheckout_quote - Quote management
- Customer and shop associations
- Pricing totals (products, shipping, discounts, tax)
- Validity dates and payment link tokens
- Status tracking and order conversion
- Admin/customer message history
mprexpresscheckout_quote_item - Quote line items
- Product references with attributes
- Custom pricing (original vs. quoted price)
- Quantity and discount tracking
- Tax rate and amount
mprexpresscheckout_quote_status - Quote workflow statuses
- Status name and color coding
- Multilingual labels via
_langtable - System flags for built-in statuses
- Position ordering
mprexpresscheckout_quote_message - Quote communication
- Customer and admin messages
- Timestamps and read status
- Employee attribution for admin messages
mprexpresscheckout_quote_history - Quote audit trail
- Status change tracking
- Employee attribution
- Timestamp logging
Sviluppo
Prerequisiti
Il modulo richiede un ambiente di sviluppo Docker. Vedere CLAUDE.md nella radice del repository per la configurazione completa.
Strumenti richiesti:
- PHP 8.4.11 (via Docker
dev-toolscontainer) - Node.js 20.19.2
- npm 9.2.0
- Composer 2.8.12
Comandi di build
Tutti i comandi devono essere eseguiti tramite il contenitore Docker:
# Navigate to module directory
cd /mnt/hdd/docker/ps178-mprexpresscheckout/html/modules/mprexpresscheckout
# Install PHP dependencies
sudo docker exec -w "$PWD" dev-tools composer install
# Install Node.js dependencies
sudo docker exec -w "$PWD" dev-tools npm install
# Build all assets (JavaScript + CSS)
sudo docker exec -w "$PWD" dev-tools npm run build
# Watch for changes during development
sudo docker exec -w "$PWD" dev-tools npm run watch
# JavaScript build only
sudo docker exec -w "$PWD" dev-tools npm run js:build
sudo docker exec -w "$PWD" dev-tools npm run js:watch
# Webpack build
sudo docker exec -w "$PWD" dev-tools npm run webpack:build
sudo docker exec -w "$PWD" dev-tools npm run webpack:watch
Sistema di build
Il modulo utilizza un sistema di build ibrido:
Gulp - Strumento di build principale
- SCSS compilation to CSS
- JavaScript bundling with Rollup
- Minification with Terser
- Source file watching
Webpack - Bundler alternativo
- Module bundling
- Code splitting
- Production optimization
Grunt - Confezionamento release
- ZIP archive creation for distribution
File sorgente
JavaScript Sources: sources/js/
- Organized by feature (checkout, payment, social, etc.)
- ES6+ syntax with transpilation
- Compiled to
views/js/
CSS Sources: sources/css/
- SCSS with variables and mixins
- Component-based structure
- Compiled to
views/css/
Qualita del codice
# PHP syntax check
sudo docker exec -w "$PWD" dev-tools php -l file.php
# Check PHP version
sudo docker exec dev-tools php -v
# Check installed PHP modules
sudo docker exec dev-tools php -m
Configurazione
Pagine di configurazione admin
Accesso tramite il pannello di amministrazione PrestaShop sotto Modules > Module Manager > MPR Express Checkout.
Schede principali:
- Dashboard - Transaction overview and statistics
- Configuration - Stripe API keys, payment method settings, icon themes
- Transactions - All payment transactions with filters
- Charges - Stripe charge details and fees
- Refunds - Refund management interface
- Payment Options - Enable/disable methods, set restrictions
- Payment Methods - Customer saved payment methods
- Social Customers - Social login registrations
- Carts - Express checkout cart sessions
- Sessions - Traffic and attribution tracking
- Shipping Services - Carrier configuration
- Quotes - Quote management and creation
- Quote Statuses - Customize quote workflow statuses
- Integrity - System health checks
Configurazione dei metodi di pagamento
Ogni metodo di pagamento puo essere configurato con:
- Enabled/Disabled status
- Country restrictions (specific countries only)
- Currency restrictions (supported currencies only)
- Browser restrictions (e.g., Apple Pay requires Safari)
- Page type restrictions (product, cart, checkout)
- Shop/Language/Group context (multistore support)
Impostazioni tema icone
Configure in Configuration tab:
- Icon Theme: Light Mode, Dark Mode, Light Accent, Dark Accent
- Card Display Mode: Generic card icon OR individual card brand icons
- Card Brands: Select which card brands to display (Visa, Mastercard, Amex, JCB, Cartes Bancaires)
Impostazioni Stripe
Required configuration:
- Test Mode API Key (Publishable & Secret)
- Live Mode API Key (Publishable & Secret)
- Webhook Secret (for payment status updates)
- Mode Toggle (Test/Live)
Impostazioni Social Login
Configure OAuth credentials for:
- Google - Client ID and Client Secret
- Facebook - App ID and App Secret
- Apple - Service ID, Team ID, Key ID, Private Key
- Microsoft - Client ID and Client Secret
Google Places API
For address autocomplete:
- API Key - Google Maps JavaScript API with Places library enabled
Controller Frontend
Il modulo fornisce 16 controller frontend accessibili tramite i link del modulo:
Controller del flusso di checkout
Checkout.php - Main unified checkout modal
- Displays payment method selection
- Handles customer authentication
- Manages address forms
- Shipping method selection
- Order review and confirmation
Processing.php - Payment processing handler
- Stripe Payment Intent confirmation
- Order creation after successful payment
- Redirect to order confirmation
PaymentStatus.php - Payment result page
- Success/failure messaging
- Order details display
- Error handling
Controller gestione clienti
Login.php - Customer login
- Email/password authentication
- Social login integration
- Remember me functionality
Register.php - Customer registration
- Account creation form
- Social registration
- Email verification
ForgotPassword.php - Password recovery
- Email-based password reset
- Security code generation
Account.php - Customer account overview
Identity.php - Personal information management
Controller gestione indirizzi
Address.php - Single address CRUD
- Add new address
- Edit existing address
- Delete address
- Google Places autocomplete integration
Addresses.php - Address book listing
- View all addresses
- Set default addresses
- Quick actions
Controller pagamento e carrello
Cards.php - Saved payment methods
- List stored cards
- Delete payment methods
- Set default card
Cart.php - Cart management
- View cart contents
- Update quantities
- Apply vouchers
Recover.php - Cart recovery
- Recover abandoned carts via email link
- Restore cart session
- Continue to checkout
Controller preventivi
Quotes.php - Customer quotes list
- View all quotes with status filtering
- Pagination and sorting
- Quick actions (view, download PDF)
Quote.php - Single quote detail view
- Quote items with pricing
- Status and validity display
- Accept/reject quote actions
- Request changes functionality
- Messaging with admin
- Payment link access
QuoteRequest.php - Quote request form
- Request quote for single product
- Request quote for entire cart
- Guest and logged-in customer support
- Custom message to admin
QuotePdf.php - Quote PDF download
- Generate professional PDF quotes
- Customer-facing download
- Secure token validation
Controller API
Ajax.php - AJAX endpoint handler
- Address validation
- Shipping rate calculation
- Voucher validation
- Country/state lists
- Product availability checks
Webhook.php - Stripe webhook receiver
- Payment Intent updates
- Charge succeeded/failed events
- Refund notifications
- Automatic order status updates
Controller Admin
16 controller backend gestiscono tutte le funzioni amministrative:
AdminMPRExpressCheckoutDashboardController - Main dashboard with KPIs
AdminMPRExpressCheckoutConfigController - Module configuration interface
AdminMPRExpressCheckoutTransactionsController - Transaction list and details
- Filter by status, date, amount, customer
- Export to CSV
- View transaction timeline
AdminMPRExpressCheckoutChargesController - Charge details
- Payment Intent and Charge IDs
- Fee breakdown
- Risk scores
- Receipt links
AdminMPRExpressCheckoutRefundsController - Refund management
- Initiate full/partial refunds
- View refund history
- Track refund status
AdminMPRExpressCheckoutPaymentOptionsController - Payment method settings
- Enable/disable methods
- Set country/currency restrictions
- Configure context rules
- Reorder display positions
AdminMPRExpressCheckoutPaymentMethodsController - Customer saved cards
- View all stored payment methods
- Delete payment methods
- Customer association
AdminMPRExpressCheckoutSocialCustomersController - Social login tracking
- View social registrations
- Platform statistics
- Login history
AdminMPRExpressCheckoutCartsController - Express checkout sessions
- View virtual carts
- Cart recovery status
- Customer matching
- Expiry management
AdminMPRExpressCheckoutSessionsController - Traffic analytics
- Session tracking
- UTM campaign data
- Landing page analysis
- Device/browser stats
AdminMPRExpressCheckoutShippingServiceController - Carrier configuration
- Set transit times
- Configure display modes
- Payment method restrictions
- External module integration
AdminMPRExpressCheckoutQuotesController - Quote management
- View and filter all quotes
- Create quotes from admin
- Edit quote items and pricing
- Send quotes to customers
- Convert quotes to orders
- Generate payment links
- Message customers
- View quote history
AdminMPRExpressCheckoutQuoteStatusesController - Quote status management
- Create custom statuses
- Edit status colors and labels
- Multilingual status names
- Reorder status display
AdminMPRExpressCheckoutIntegrityController - System health checks
- Database integrity validation
- Configuration validation
- File integrity checks
- Dependency verification
AdminMPRExpressCheckoutAjaxController - Admin AJAX endpoint
- Dynamic form updates
- Autocomplete suggestions
- Quick actions
Punti di integrazione
PrestaShop Hooks
Il modulo si integra in piu punti del ciclo di vita di PrestaShop:
Hooks pagina prodotto:
displayProductAdditionalInfo- Express checkout button on product pagesdisplayProductActions- Alternative button placement
Hooks carrello:
displayShoppingCart- Express checkout in cartdisplayShoppingCartFooter- Cart footer buttons
Hooks checkout:
displayPaymentReturn- Order confirmation messagingpaymentOptions- Add payment methods to checkoutdisplayOrderConfirmation- Post-order actions
Hooks cliente:
actionAuthentication- Post-login actionsactionCustomerAccountAdd- Post-registration actionsactionObjectCustomerUpdateAfter- Customer data sync
Hooks ordini:
actionValidateOrder- Order creation trackingactionOrderStatusUpdate- Sync order status with StripedisplayAdminOrder- Admin order page additions
Hooks Header/Footer:
displayHeader- Load Stripe.js and module assetsdisplayFooter- Initialize checkout scripts
Integrazioni API esterne
Stripe API
- Payment Intents API for payment processing
- Customers API for saved payment methods
- Charges API for transaction details
- Refunds API for refund processing
- Webhooks for real-time updates
Google APIs
- Google Sign-In for OAuth authentication
- Google Places API for address autocomplete
Facebook API
- Facebook Login for OAuth authentication
- Graph API for user profile data
Apple Sign In
- Sign in with Apple for iOS/macOS users
- JWT token validation
Microsoft Identity Platform
- Microsoft account authentication
- Azure AD integration
VIES API
- EU VAT number validation
- Company verification
Sistema preventivi/RFQ
Il modulo include un sistema completo di preventivi/richiesta di preventivo (RFQ) per il commercio B2B, che consente ai clienti di richiedere prezzi personalizzati e agli admin di creare offerte su misura.
Workflow preventivi
Ciclo di vita degli stati:
- Pending - Initial quote request from customer
- Draft - Admin is preparing the quote
- Sent - Quote sent to customer for review
- Negotiating - Customer requested changes, discussion ongoing
- Accepted - Customer accepted the quote
- Rejected - Customer declined the quote
- Expired - Quote validity period passed
- Converted - Quote converted to order
- Cancelled - Quote cancelled by admin
Funzionalita cliente
Richiesta preventivo:
- Request quotes from product pages via "Request Quote" button
- Request quotes for entire cart contents
- Add custom messages explaining requirements
- Guest quote requests (if enabled)
Gestione preventivi:
- View all quotes in "My Quotes" section of customer account
- See pending quote count badge
- View detailed quote with itemized pricing
- Accept or reject quotes with one click
- Request changes with explanation message
- Message admin directly on quote detail page
- Download PDF version of quotes
- Access payment link for accepted quotes
Funzionalita admin
Creazione preventivo:
- Create quotes from admin panel
- Import products from existing cart or order
- Add products with custom pricing
- Set item-level discounts
- Configure shipping costs
- Set quote validity period
Gestione preventivi:
- View all quotes with advanced filtering
- Edit quote items and pricing anytime
- Send quotes to customers
- Generate secure payment links
- View and respond to customer messages
- Track full quote history (status changes, messages)
- Convert accepted quotes to orders
Stati preventivi:
- 9 built-in statuses with colors
- Create custom statuses
- Multilingual status labels
- Reorder status display
Generazione PDF
I preventivi PDF professionali includono:
- Company logo and branding
- Quote reference and dates
- Customer billing/shipping addresses
- Itemized product list with images
- Individual and total pricing
- Terms and conditions
- Validity period
- Custom footer text
Opzioni di configurazione
- Enable/disable quote system globally
- Show/hide "Request Quote" button on product pages
- Show/hide "Request Quote" button in cart
- Allow guest quote requests
- Default quote validity period
- PDF customization (logo, terms, footer)
- Email notifications for quote events
Hooks
Hooks prodotto/carrello:
displayQuoteButtonProduct- "Request Quote" button on product pagesdisplayShoppingCartFooter- "Request Quote" button in cart
Account cliente:
displayCustomerAccount- "My Quotes" link with pending badge
Roadmap futura
Funzionalita pianificate
Espansione metodi di pagamento
- Additional regional payment methods
- Cryptocurrency support (Bitcoin, Ethereum)
- Local payment gateways beyond Stripe
Funzionalita B2B migliorate
Quote request system✅ Implemented- Approval workflows for company purchases
- Custom pricing per company/customer
- Volume discount automation
- Credit limit enforcement
Recupero avanzato del carrello
- Multi-step email sequences
- SMS cart recovery
- Push notifications for abandoned carts
- Dynamic discount offers in recovery emails
Analisi e reportistica
- Conversion funnel analysis
- Payment method performance comparison
- Geographic sales mapping
- Customer lifetime value tracking
- A/B testing framework for checkout variations
Abbonamenti e pagamenti ricorrenti
- Subscription product support
- Automatic recurring billing
- Subscription management portal
- Trial period handling
Miglioramenti multi-valuta
- Dynamic currency conversion at checkout
- Display prices in customer's local currency
- Multi-currency saved payment methods
Integrazione app mobile
- Native mobile SDK
- In-app payment processing
- Mobile wallet integration expansion
Funzionalita basate su AI
- Fraud detection using machine learning
- Predictive cart abandonment prevention
- Smart payment method recommendations
- Personalized checkout experiences
Ottimizzazioni delle prestazioni
- Service worker for offline cart management
- Progressive web app (PWA) checkout
- Lazy loading of payment method scripts
- CDN integration for static assets
Conformita e sicurezza
- PSD2 Strong Customer Authentication (SCA)
- GDPR data export/deletion tools
- SOC 2 compliance reporting
- Enhanced fraud prevention rules
Strumenti per sviluppatori
Suite di test
- Unit tests for all classes
- Integration tests for payment flows
- End-to-end testing with Puppeteer
- Performance benchmarking tools
API & Webhooks
- Public API for headless commerce
- Custom webhook events
- GraphQL API support
Documentazione
- Developer API documentation
- Integration guides for third-party modules
- Theme customization guide
- Video tutorials
Supporto e risorse
Documentation: /docs/ directory
License: Commercial - restricted domains only
Author: mypresta.rocks (info@mypresta.rocks)
Repository: https://github.com/myprestarocks/mprexpresscheckout
Specifiche tecniche
PHP Requirements: 7.1.3+ (Tested with PHP 8.4.11) PrestaShop Version: 1.6 - 1.7.8.11+ Database: MySQL 5.5+ / MariaDB Dipendenze esterne:
- Stripe PHP SDK (via Composer)
- Firebase JWT (for social login token validation)
- Google Closure Compiler (dev dependency)
- Webpack, Gulp, Grunt (dev dependencies)
Supporto browser:
- Chrome 90+ (Google Pay, Samsung Pay)
- Safari 14+ (Apple Pay)
- Firefox 88+
- Edge 90+
- Mobile browsers (iOS Safari 14+, Chrome Mobile 90+)
Dimensioni del modulo:
- Total Lines of Code: 35,000+ (PHP classes, controllers, templates)
- Core Classes: 30+ (28,000+ lines)
- Controllers: 36 (20 frontend + 16 admin)
- Database Tables: 34
- SVG Icons: 248
- Supported Languages: 7
Licenza
Questo e un modulo commerciale con licenza per l'uso solo su domini specifici. L'uso, la distribuzione o la modifica non autorizzati sono vietati.
Copyright (c) mypresta.rocks - Tutti i diritti riservati.
v1.7.3 — 2026-02-15
- ▸Added PS 9.1 compatibility with Hummingbird checkout template overrides
- ▸Fixed express checkout button not rendering in minicart dropdown
- ▸Added address autocomplete integration with Google Places API
- ▸Fixed order summary not updating when changing carrier via AJAX
- ▸Improved checkout step validation with inline error messages
- ▸Fixed guest checkout email field not validating on blur
v1.7.2 — 2025-10-02
- ▸Added PS 9.0 compatibility
- ▸New one-page checkout layout option (all steps visible simultaneously)
- ▸Fixed payment method list not refreshing after address country change
- ▸Added order note field with configurable character limit
- ▸Fixed checkout progress bar not reflecting completed steps on page reload
- ▸Improved performance: reduced checkout page API calls from 8 to 3
v1.7.1 — 2025-06-18
- ▸Fixed Terms & Conditions checkbox not blocking order submission when unchecked
- ▸Added gift wrapping option with message field in checkout flow
- ▸Fixed delivery date picker conflicting with carrier selection validation
- ▸Added customer group-specific checkout field visibility rules
- ▸Improved mobile checkout layout with single-column responsive design
v1.7.0 — 2025-02-25
- ▸New customizable checkout field builder (add/remove/reorder fields)
- ▸Added smart address form with conditional field display by country
- ▸Added checkout abandonment tracking with recovery email integration
- ▸Fixed VAT number validation failing for EU B2B customers
- ▸Added social login (Google, Facebook, Apple) at checkout registration step
- ▸Improved WCAG 2.1 accessibility compliance for all checkout elements
v1.6.0 — 2024-10-30
- ▸Added PS 8.2 compatibility with Symfony form components
- ▸New multi-address delivery support (split order to different addresses)
- ▸Added real-time carrier rate calculation during address entry
- ▸Fixed coupon code field not showing error feedback for invalid codes
- ▸Added checkout analytics events for Google Analytics 4 (GA4)
v1.5.0 — 2024-07-08
- ▸Added saved address selection with edit-in-place functionality
- ▸New checkout step summary showing selected options before payment
- ▸Added payment method logos with configurable display order
- ▸Fixed checkout form autofill not triggering validation on Chrome
- ▸Improved error handling with clear user-facing messages for API failures
v1.4.0 — 2024-03-12
- ▸Initial major feature release with redesigned checkout flow
- ▸Two-column layout: order form and live order summary
- ▸Step-by-step checkout with progress indicator
- ▸Guest checkout with optional account creation post-purchase
- ▸Inline field validation with real-time feedback
- ▸Support for PS 1.7.6+ and PS 8.x
Reso semplice - senza domande
Installa, configura e guadagna
Priorita ad aiuto e soddisfazione
No reviews yet. Be the first to leave a review!
Write a Review