PS PrestaShop Gemiddeld

Express Checkout: Apple Pay, Google Pay & Amazon Pay via Stripe

De expresbetaling met Apple Pay, Google Pay en Amazon Pay installeren, met Stripe verbinden (handmatig of automatisch) en instellen op de productfiche, in de winkelwagen en bij het afrekenen, voor PrestaShop 8 en 9.

Bijgewerkt Moduleversie 1.1.0

Overzicht

DataFirefly Express Checkout voegt betalen met een wallet toe aan uw PrestaShop 8- of 9-winkel: Apple Pay, Google Pay en Amazon Pay, via Stripe. De module steunt op het Express Checkout Element van Stripe: één component dat automatisch herkent welke wallets op het toestel van de klant beschikbaar zijn en de bijbehorende knoppen toont.

De knoppen kunnen op drie plaatsen verschijnen, elk apart in te schakelen: op de productfiche (expresaankoop), in de winkelwagen en op de betaalpagina. Na de betaling wordt de bestelling aangemaakt en gevalideerd door een Stripe-webhook met gecontroleerde handtekening, met een idempotente logica die dubbele bestellingen uitsluit. De module werkt met één winkel en in multistore, en wordt in vijf talen geleverd (FR, EN, ES, DE, IT).

Vereisten

  • PrestaShop 8.0 tot 9.x, PHP 7.4 of hoger.
  • De extensie PHP cURL ingeschakeld (wordt bij de installatie gecontroleerd).
  • Een actief Stripe-account.
  • Een winkel die via HTTPS wordt geserveerd (verplicht voor Apple Pay en Google Pay).

Installatie

  1. Open in de backoffice Modules > Modulebeheer.
  2. Klik op Een module installeren en plaats het ZIP-archief van de module.
  3. Klik na de installatie op Configureren.

Bij de installatie maakt de module een tabel aan om de transacties op te volgen, plus een eigen besteltoestand « Betaling geautoriseerd (wacht op inning) » die bij de handmatige inning wordt gebruikt.

Verbinden met Stripe

De module biedt twee manieren van verbinden, in te stellen met het veld Verbindingsmodus.

Handmatige modus (API-sleutels)

Vul uw sleutels in uit het Stripe-dashboard (Ontwikkelaars > API-sleutels):

  • De publieke sleutel en de geheime sleutel, in de test- en daarna in de liveversie.
  • Het webhookgeheim (zie het onderdeel Webhook hieronder).

Zet het veld Modus op Test tijdens de integratie en daarna op Live in productie. Elke modus heeft zijn eigen set sleutels.

Automatische modus (Stripe Connect / OAuth)

Deze modus verbindt uw Stripe-account met één klik. Klik op Verbinden met Stripe, geef toestemming, en de module haalt automatisch de publieke en geheime sleutel op, maakt de webhook aan (met het ondertekeningsgeheim) en probeert het walletdomein voor Apple Pay en Google Pay te registreren. De knop Verbinding verbreken trekt de toegang in en wist de sleutels.

De automatische modus vereist een Stripe Connect-toepassing. Er zijn twee mogelijkheden:

  • Uw eigen Connect-toepassing: vul de client_id en het platformgeheim in (Test en Live).
  • DataFirefly-tussenpersoon: vul de URL van de tussenpersoon in, die het platformgeheim bewaart en de OAuth-uitwisseling uitvoert. Is die URL ingevuld, dan gaat zij voor.

Neem de omleidings-URL die in het verbindingspaneel staat op bij de Redirect URIs van uw Stripe Connect-toepassing, anders wordt de OAuth-toestemming geweigerd.

Stripe-configuratie (dashboard)

Webhook

Maak in de handmatige modus het endpoint aan via Ontwikkelaars > Webhooks > Een endpoint toevoegen:

  • URL: die welke boven aan de configuratiepagina van de module staat (.../module/dfexpresscheckout/webhook).
  • Gebeurtenissen: payment_intent.succeeded en payment_intent.payment_failed.
  • Kopieer het ondertekeningsgeheim (whsec_…) naar de configuratie van de module.

In de automatische modus worden de webhook en het geheim ervan bij het verbinden automatisch aangemaakt.

Zonder ingesteld webhookgeheim weigert de module de binnenkomende aanroepen. Dat is een veiligheidsmaatregel: er wordt nooit een bestelling aangemaakt op basis van een niet-gecontroleerde aanroep.

De wallets inschakelen

  • Amazon Pay: schakel die in via Instellingen > Betaalmethoden in uw Stripe-dashboard. Daarna verschijnt die automatisch in het Express Checkout Element.
  • Apple Pay: uw domein moet in Stripe geverifieerd zijn (Instellingen > Apple Pay). In de automatische modus probeert de module die registratie voor u te doen.
  • Google Pay: automatisch actief, geen actie nodig.

Configuratie van de module

Weergaveplaatsen

Drie schakelaars bepalen waar de knoppen verschijnen: op de productfiche, in de winkelwagen en bij het afrekenen. Schakel ze onafhankelijk in, volgens uw strategie.

Manier van innen

  • Onmiddellijke inning (standaard): de betaling wordt meteen geïnd en de bestelling gaat naar « Betaling aanvaard ».
  • Autorisatie en daarna handmatige inning: Stripe autoriseert de betaling zonder die te innen; de bestelling komt in de toestand « Betaling geautoriseerd (wacht op inning) ».

Opschrift en thema

Pas het getoonde opschrift boven de knoppen en het thema van de knoppen aan (zwart, wit, wit met omlijning) om die bij uw ontwerp te laten aansluiten.

Aan klantzijde

Afhankelijk van de plaats ziet de klant een of meer walletknoppen. Hij bevestigt de betaling met één authenticatie (Face ID, vingerafdruk, Amazon-wachtwoord), zonder een account aan te maken: het e-mailadres en de lever- en factuuradressen komen uit de wallet. Zijn er verzendkosten, dan biedt de module de actieve vervoerders aan en herberekent hij het totaal bij elke adreswijziging. Voor digitale producten is er geen leverstap.

Vanaf de productfiche slaat de expresaankoop op het getoonde product (met het gekozen aantal), via een eigen winkelwagen, zonder de lopende winkelwagen van de klant te wijzigen.

Handmatige inning: innen of annuleren

In de modus met handmatige inning stuurt u alles aan via de besteltoestand:

  • Om de betaling te innen, zet u de bestelling op de toestand « Betaling aanvaard ».
  • Om de autorisatie vrij te geven, zet u de bestelling op de toestand « Geannuleerd ».

Een Stripe-autorisatie heeft een beperkte houdbaarheid (doorgaans 7 dagen). Denk eraan te innen vóór die verstrijkt, anders wordt de autorisatie automatisch vrijgegeven.

Bestellingen, webhook en idempotentie

De bestelling wordt aangemaakt en gevalideerd zodra de gebeurtenis payment_intent.succeeded binnenkomt (via de ondertekende webhook). Een retourcontroller dient als vangnet wanneer de klant naar de winkel terugkeert. Een transactietabel koppelt elke PaymentIntent aan zijn bestelling: dezelfde transactie levert dus nooit twee bestellingen op, in welke volgorde de browserretour en de webhook ook binnenkomen. De gastklant en zijn adressen worden opgebouwd uit de gegevens die de wallet teruggeeft.

Meertaligheid en multistore

De module wordt geleverd met vertaalbestanden in FR, EN, ES, DE en IT en werkt in een multistorecontext. De Stripe-sleutels, de verbindingsmodus en de manier van innen zijn gewone configuratie-instellingen.

Problemen oplossen

De knoppen verschijnen niet

Controleer of de winkel op HTTPS draait, of de Stripe-sleutels voor de actieve modus (Test of Live) zijn ingevuld, en of de betrokken plaats is ingeschakeld. Apple Pay verschijnt alleen in Safari en op iOS met een geverifieerd domein; Google Pay in Chrome en op Android.

De betaling lukt maar er ontstaat geen bestelling

Controleer de webhook: de juiste URL, de gebeurtenissen payment_intent.succeeded en payment_intent.payment_failed, en een ondertekeningsgeheim dat gelijk is aan dat in de module. Bekijk de Stripe-logboeken (de afleverpogingen van de webhook) en de PrestaShop-logboeken.

Amazon Pay ontbreekt

Die moet worden ingeschakeld via Instellingen > Betaalmethoden in het Stripe-dashboard. Daarna verschijnt die automatisch.

De automatische verbinding mislukt

Controleer of de Connect client_id voor de actieve modus is ingevuld en of de omleidings-URL van de module in uw Connect-toepassing is opgegeven. Een ongeldig state-token wijst op een verlopen sessie: start de verbinding opnieuw vanuit de backoffice.

Verwijderen

Bij het verwijderen verdwijnt de configuratie van de module. De tabel met de transactieopvolging blijft standaard bewaard, voor de traceerbaarheid van de eerdere bestellingen.

FAQ

Werkt Amazon Pay echt via Stripe?

Ja. Stripe ondersteunt Amazon Pay binnen het Express Checkout Element; u hoeft die alleen in het Stripe-dashboard in te schakelen.

Moet ik afhankelijkheden installeren (Composer)?

Nee. De module bevat een eigen Stripe-client in cURL. U installeert de module en vult uw sleutels in (of verbindt uw account).

Werkt de module met PrestaShop 9?

Ja, hij werkt met PrestaShop 8.0 tot 9.x en is getest op PHP 8.1 tot 8.3.

Kan ik van de handmatige naar de automatische modus overschakelen?

Ja, op elk moment vanuit de configuratie. In de automatische modus worden de sleutels door de OAuth-verbinding ingevuld; in de handmatige modus voert u ze zelf in.

Was deze pagina nuttig?

Loopt u nog vast? Neem contact op met support