Skip to content

LucaStars Payment Service Provider

Een Payment Service Provider (PSP) wordt gebruikt om betalingen te verwerken. Denk hierbij onder andere aan Mollie, Adyen, Stripe en Global Collect. Als je ooit eens wat online hebt besteld, heb je een PSP gebruikt! Zonder een PSP moet je zelf koppelen met iDeal (in Nederland), PayPal of VISA/MasterCard om allerlei soorten betalingen te ondersteunen. Dat is een hoop gedoe die een PSP je bespaard.

Voor dit project heeft LucaStars een namaak PSP beschikbaar, uiteraard wordt er dan geen echte betaling gedaan, maar je kunt hier wel je bestelproces op aansluiten.

POST https://[PSP URL]/payments
Authorization: Bearer [API Key]

{
    "currency": "EUR",
    "value": 9.99,
    "description": "Order #12345",
    "redirectUrl": "https://[Webshop URL]/validate-payment/12345"
}

Response
{
    "transactionId": 123,
    "checkoutUrl": https://[PSP URL]/checkout/123
}
GET https://[PSP URL]/payments/[Transaction ID]
Authorization: Bearer [API Key]

Response
{
    "status": "paid"
}

De flow is ongeveer als volgt:

  • Je maakt een payment-object aan met wat informatie. Je vertelt de PSP ook waar de gebruiker naartoe gestuurd moet worden na een betaling (redirectUrl).
  • Je krijgt een transactionId, deze moet je onthouden in de database. De checkoutUrl gebruik je om de gebruiker naar een betaalpagina te sturen.
  • Op de betaalpagina rekent de gebruiker normaliter af met bijvoorbeeld iDeal of PayPal, in dit geval kan je een betaalstatus kiezen (paid, canceled).
  • De betaalpagina stuurt de gebruiker terug naar de redirectUrl.
  • Op basis van de orderId in de URL (bijv. 12345) haal je de transactionId uit de database en controleer je of de status paid is.

API momenteel nog niet beschikbaar

Deze API is momenteel nog niet beschikbaar, maar zal dat vanaf 14 april wel zijn! Je kunt deze API dus wel alvast opnemen in je technisch ontwerp.