Winkelbeheer & operations
Betaalproviders configureren
Stel betaalextensies in, bescherm inloggegevens, test gehost afrekenen en begrijp de beperkingen per provider.
Op deze pagina
Begin met een sandbox van de provider
Betaalproviders zijn optionele Extensions, geen onderling uitwisselbare garanties. De huidige ondersteuningsdocumentatie van Agovena claimt geen live productieverificatie van deze adapters. Controleer je account, valuta, betaalmethoden, webhooks en terugbetalingsbehoeften voordat je echte betalingen accepteert.
Open Admin → Extensies, installeer en activeer de gekozen provider en open vervolgens de instellingen. De extensie moet daarvoor ingeschakeld zijn. Geheime velden worden niet opnieuw getoond; een leeg geheim veld bij een latere opslag behoudt de ingestelde waarde. Een geheim opnieuw invoeren kan recente wachtwoordbevestiging vereisen. Zie het gedrag van extensie-instellingen.
Plaats geen betaalkaartgegevens, API-sleutels, webhookgeheimen of autorisatieheaders in productvelden, bestelnotities, logs of supportvragen. Bewaar gegevens uitsluitend in ondersteunde private instellingen of een beschermde omgeving.
Inrichting per provider
| Provider | Winkelconfiguratie en beperking |
|---|---|
| Mollie | Begin met een test-API-sleutel. Configureer /webhooks/payments/mollie. Beschikbare betaalmethoden horen bij deze extensie en zijn geen losse pakketten. |
| Stripe | Stel een testgeheim en webhookondertekeningsgeheim in voor /webhooks/payments/stripe. Gebruikt gehoste Stripe Checkout. |
| PayPal | Configureer client ID, client secret, webhook-ID en sandboxmodus. Storefront-checkout gebruikt de officiële PayPal JS SDK-popup-overlay; API-clients behouden de directe approvalredirect. Eenmalige en automatische checkout gebruiken Orders v2. Automatische checkout slaat na een succesvolle capture een PayPal Vault-autorisatie op; Core voert latere renewal-orders uit met vault_id en stored_credential. Ondersteunt geverifieerde approval-capture, volledige en gedeeltelijke capture-refunds, Vault-revocation en reconciliatie via /webhooks/payments/paypal. |
| Paddle | Stel de Billing-API-sleutel, Paddle.js client token, webhook secret en sandboxmodus in. Gebruik de publieke /paddle/checkout-launcher als Paddle Default payment link. Maakt inline prijzen op basis van het ordertotaal, ondersteunt volledige en gedeeltelijke refunds en gebruikt Paddle-managed subscriptions voor automatische renewal. Agovena previewt en filtert de gekozen Paddle-betaalmethode op basis van transaction context; /webhooks/payments/paddle is verplicht en kan niet worden uitgeschakeld. |
| Tebex | Stel project_id, secret_key en webhook_secret in. Een product-naar-pakketkoppeling is niet nodig: Agovena stuurt custom itemnamen, prijzen, quantities en metadata naar Tebexs /checkout endpoint. Het officiële Tebex icon-mark wordt gebruikt voor de ene tebex:tebex-methode. De provider-hosted checkout wordt via redirect geopend. Gebruik /webhooks/payments/tebex, inclusief signed validation-webhookverwerking. Basketreconciliatie bepaalt de echte tbx- transaction vóór refunds. Volledige refunds en provider-managed recurring lifecycle worden ondersteund binnen de grenzen van één subscription-item, geen trial en cancellation aan het einde van de periode; deelrefunds worden niet ondersteund. De Checkout API heeft geen apart globaal endpoint voor payment-method discovery. |
Tebex is production-ready voor deze gedocumenteerde integratiescope. Tebex-accountgoedkeuring, providerconfiguratie en operationele Sandbox/live-verificatie blijven verantwoordelijkheden van de merchant en zijn niet nodig voor pakketinstallatie.
Zet vóór webhookpaden de echte publieke HTTPS-oorsprong van je winkel. Voeg geen verzonnen HMAC-geheim toe voor Mollie: die implementatie haalt de genoemde betaling via de geauthenticeerde API op. Stripe en andere providers met ondertekende berichten gebruiken hun eigen verificatie. Een geslaagd HTTP-antwoord op een handmatig ingetypte URL is geen geldige providerwebhooktest.
Bronnen: Mollie-inrichting, Stripe-inrichting, PayPal-instellingen, Paddle-gateway en Tebex-gateway.
Controleer de verbinding zonder betaling
Voer na inschakelen en configureren uit:
php artisan agovena:verify-providers
Gebruik specifiek voor Mollie-testgegevens:
php artisan agovena:verify-providers mollie --sandbox
Het commando voert beschikbare healthchecks uit zonder betalingen, zendingen of servers aan te maken. De sandboxbeveiliging weigert specifiek Mollie-sleutels met een livevoorvoegsel. Neem niet aan dat deze vlag iedere andere provider in testmodus dwingt.
Lees het resultaat, niet alleen de exitcode. Geen beschikbare healthcallbacks kan een waarschuwing én een geslaagde exit opleveren. Een verbindingscontrole bewijst geen betaling, terugbetaling of terugkerende autorisatie.
Test het volledige klantproces
Gebruik een echt testaccount van de provider en een afgeschermde winkel. Controleer:
- De voor dit account beschikbare methoden verschijnen bij de bedoelde valuta en bestelling.
- Gehost afrekenen slaagt in de sandbox en betaling, bestelling en factuur komen overeen.
- Terugkeer vóór de webhook markeert de bestelling niet te vroeg als betaald.
- Een vertraagde of herhaalde webhook levert niet dubbel.
- Annulering, verlopen en mislukte betaling blijven onbetaald en bieden een passende mogelijkheid om opnieuw te proberen.
- Ondersteunde volledige en gedeeltelijke terugbetalingen kloppen bij zowel provider als Agovena.
- Abonnementen en verlengingen werken afzonderlijk. PayPal bewaart tijdens de eerste Orders v2-payment een herbruikbare Vault-authorization; Core voert latere renewal-orders uit. Paddle beheert zijn eigen provider-managed subscriptionflow. Controleer per provider de renewal- en cancellationwerking naast de initiële betaling.
Laat workers en cron draaien. Blijft een betaling in afwachting na providerbevestiging, controleer dan callbacks en reconciliatie voordat je opnieuw laat betalen of handmatig registreert. Activeer development instant-pay niet voor een publieke winkel.
Controleer vóór omschakeling naar livegegevens de webhookregistratie, valuta/methoden en zakelijke goedkeuring van het liveaccount. Voor Paddle zijn webhooks nodig voor subscription-renewals en definitieve refund adjustments; alleen transaction polling is geen volledige production fallback. Bevestig het hele proces via een expliciet toegestane livevalidatie. Zie bestelbeheer voor de grenzen van handmatige betaling, annulering en afstemming.