De betaalpagina van Axepta BNP Paribas wordt gebruikt wanneer een handelaar een volledige en gepersonaliseerde betaalervaring aan klanten wil aanbieden. Deze oplossing is ideaal voor e-commercewebsites die een veilige betaaloplossing willen integreren die voldoet aan de huidige normen.

Deze integratie vereist minimale ontwikkelingsinspanning, ondersteunt meerdere betaalmethoden in één implementatie en zorgt ervoor dat gevoelige klantgegevens volledig binnen de systemen van Axepta BNP Paribas blijven. Door de betalingsverwerking uit te besteden, vermindert uw bedrijf aanzienlijk de verantwoordelijkheden en kosten met betrekking tot PCI-DSS-naleving.


Samenvatting



1. Belangrijkste voordelen

  • Geoptimaliseerde gebruikerservaring: Bied uw klanten een intuïtieve, veilige en responsieve betaalinterface.
    Minimale ontwikkelingsinspanning: Ondersteun meerdere betaalmethoden in één implementatie.
    Naleving van normen: Voldoen aan de huidige regelgeving via het beheer van gevoelige klantgegevens door Axepta BNP Paribas, waardoor uw PCI-DSS-verantwoordelijkheden en -kosten aanzienlijk worden verminderd.


2. Betaal Flow

De klant gaat naar de kassa op uw webshop. 

  1. Uw frontend vraagt de betaalpagina aan bij de backend.
  2. Uw backend doet een Create checkout session -oproep naar Axepta BNP Paribas.

  3. Axepta BNP Paribas reageert met de doorverwijzings-URL naar uw backend.
  4. Uw backend zorgt ervoor dat de browser de gebruikersinterface doorverwijst naar de doorverwijzings-URL.
  5. De klant wordt doorgestuurd naar de gehoste betaalpagina van Axepta BNP Paribas.
  6. De klant selecteert de gewenste betaalmethode en voltooit de betaling.
  7. Na voltooiing wordt de klant doorgestuurd naar de return-URL die u tijdens de Create checkout session oproep hebt opgegeven (urls.return), met payId in de queryparameters. 
  8. De browser haalt de return-URL op, gehost door uw backend.
  9. Backend doet een GET Payment details -oproep met payId om de responscode van de betaling op te halen.
  10. Axepta BNP Paribas reageert met de responseCode van de betaling, samen met andere parameters.
  11. Backend toont een succes- of foutpagina op basis van de responscode van de betaling.


3. Aanmaken van een checkout-sessie (stap voor stap)

(Documentatie van de /payment/session API: Create checkout session )

Technische Verbindingsgegevens

Technische verbindingsgegevens moeten worden meegegeven in de HTTP-headers van de REST-aanvraag:

  • Content-Type

het type payload; gegevens moeten in een JSON-payload worden meegegeven.

Content-Type: application/json

  • Autorisatiegegevens, ontvangen tijdens de OAuth-v2-authenticatiestap. Dit omvat het token type en JSON Web Token (JWT).
    Deze moeten worden gespecificeerd in de 'Authorization'-header. 

Authorization: <token_type> <YOUR_JWT>

  • Idempotentie ID

Essentieel voor het detecteren van mogelijke HTTP-herhalingen.

Gebruik de 'Idempotency-Key'-header en genereer een uuid-v4 als waarde. 

Idempotency-Key: "8f35cb16-2f05-4aa1-85cf-b1e41ee7aec9"

Minimale Gegevens

Om een betaling te starten, zijn de volgende minimale gegevens vereist:

  • Merchant-side transaction identifier: 'transId'
    • Het bedrag en de valuta van de transactie: 'amount'-object, bestaande uit 'currency' en 'value'.
    • Het bedrag moet altijd worden uitgedrukt in de kleinste eenheid van de transactievaluta (bijvoorbeeld eurocenten).
  • Klantidentificatie: 'customerInfo'-object.
    • Minimaal het e-mailadres van de klant: 'email'.
    • Het is sterk aangeraden om ook de klantidentificatie op de handelaarswebsite mee te geven: 'merchantCustomerId'.
    • Deze data is essentieel voor de 'One-Click'-functionaliteit.
  • Orderdata: 'order'-object.
    • Minimaal één van de volgende: ordernummer 'merchantReference' of factuurnummer 'invoiceId' gegenereerd op de handelaarswebsite.
    • Het is aangeraden om beide te verstrekken.
  • Return-URL's: 'urls'-object.
    • Verplichte adressen voor 3 return-URL's: return, cancel, webhook.
curl -i -X POST \
  https://test.paymentpage.axepta.bnpparibas/api/v2/payments/sessions \
  -H 'Authorization: <token_Type> <YOUR_JWT>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: "8f35cb16-2f05-4aa1-85cf-b1e41ee7aec9" \
  -d '{
    "transId": "95330876-67ae-4949-a11c-b9a29257831b",
 	"amount": {
    	"currency": "EUR",
    	"value": 1500
    },
    "customerInfo": {
        "merchantCustomerId": "id-8803",
        "email": "john-doe@email.com"
    },
 	"order": {
    	"merchantReference": "order7811",
        "invoiceId": "invoice10240203569454"
    },
 	"urls": {
 		"return":"https://myProcessingServer.net/myApi/success.php?transId=95330876-67ae-4949-a11c-b9a29257831b",
		"cancel":"https://myProcessingServer.net/myApi/cancel.php?transId=95330876-67ae-4949-a11c-b9a29257831b",
 		"webhook":"https://myBackOfficeServer.net/webhook.php" 
    }
}

Respons en doorverwijzing naar de betaalpagina

U zou een HTTP 202-respons moeten ontvangen die aangeeft dat de transactieverwerking is gestart en dat er een betalingscontext op de server is gemaakt.

De responsbody bevat de link naar de betaalpagina die gehost wordt op het Axepta BNP Paribas Online-platform.

U moet de browser van de klant doorverwijzen naar deze link.

{
    "_links": {
        "redirect": {
            "href": "https://test.paymentpage.axepta.bnpparibas/paymentpage.aspx?token=eb577d2d61ba4396bfeb0de554e76a70",
            "type": "text/html"
        }
    }
}



4. Aanbevelingen

We raden aan om minstens de volgende gegevens door te sturen:

  • Transactie-identifier: de unieke betalingsidentifier
  • Betaalbedrag: het bedrag dat de klant moet betalen
  • Valuta: de valuta gebruikt voor de betaling
  • Klantidentifier: de unieke klantidentifier
  • E-mail: het e-mailadres van de klant
  • Orderidentifier (order.merchantReference): de orderidentifier
  • Factuuridentifier (order.invoiceId): de factuuridentifier gekoppeld aan deze betaling

Onze complete richtlijnen zijn beschikbaar: Integratieaanbevelingen


5. Beschikbare betaalmethoden

We bieden de volgende betaalmethoden, afgestemd op uw specifieke behoeften en die van uw klanten:


6. Gerelateerde functies

  • Automatische generatie van end-to-end-referentie (RefNr): elke transactie krijgt een unieke, automatisch gegenereerde referentie.
  • Duplicaatcontrole: detecteert en beheert dubbele betaalpogingen om fouten te voorkomen. Deze functie is beschikbaar tijdens de configuratie van uw webshop of via een supportverzoek.