API REFERENCE
Token verkrijgen
Van toepassing op: een Token verkrijgen via de gehoste betaalpagina van YabandPay
De Hosted Payment Page (HPP) van YabandPay is een gebruiksklare betaalpagina die volledig door YabandPay wordt beheerd. Handelaren kunnen betalingen veilig accepteren doordat gevoelige PCI-gegevens op het systeem van YabandPay worden gehost. Het formulier kan als iframe of omleidingspagina in de checkout van de handelaar worden opgenomen.
Nadat de betaler een standaardcreditcardtransactie op de gehoste betaalpagina van YabandPay heeft voltooid en toestemming heeft gegeven, zet YabandPay de gevoelige kaarthoudergegevens om in een willekeurige tekenreeks (een Token), zodat de gegevens niet meer naar de kaarthouder te herleiden zijn. Het Token kan voor de volgende betalingen worden gebruikt:
- Klanten kunnen met één klik op de checkoutpagina betalen zonder creditcardgegevens in te voeren.
- Handelaren kunnen het Token gebruiken voor terugkerende betalingen, abonnementskosten en vergelijkbare doeleinden.
[!TIP|style:flat] Workflow
- Schakel Token-betalingen in. Neem contact op met uw accountmanager om de Token-betaalfunctie te activeren.
- Verkrijg toestemming van de gebruiker. Wanneer u expressbetalingen (Token-betalingen) voor consumenten inschakelt, moet u gebruikers duidelijk informeren en hun toestemming verkrijgen om mogelijke geschillen te voorkomen.
- Verkrijg een Token. Start eerst een standaardcreditcardtransactie. YabandPay retourneert een betaal-URL. Nadat de gebruiker via die URL heeft betaald en toestemming heeft gegeven, retourneert YabandPay het Token in een asynchrone melding met de payment_token_object parameter.
- Start een Token-betaling. Neem het Token op in de payment_token_object variabele. Als de Token-validatie slaagt, verwerkt YabandPay de betaling. Als de validatie mislukt, retourneert YabandPay een fout. In dat geval raden we aan opnieuw een standaardcreditcardtransactie te starten om een Token te verkrijgen en daarna de betaling opnieuw te starten.
| Parameter | Type | Beschrijving | Verplicht |
|---|---|---|---|
| user | String | Kassiersaccount UID | Verplicht |
| sign | String | Signature | Verplicht |
| method | String | v3.CreateCardPayments | Verplicht |
| time | Long | Timestamp | Verplicht |
- Parameters
| Parameter | Type | Beschrijving | Verplicht |
|---|---|---|---|
| pay_method | String | online | Verplicht |
| sub_pay_method | String | Cards HPP | Verplicht |
| operation | String | 10.Create Token only; 11.Token for sales; 12.Token for authorisation | Verplicht |
| order_id | String | Merchant order ID | Verplicht |
| 3ds_initiate | String | 3ds settings. 01. 3ds verification must be enabled; | Verplicht |
| cardinfo | String | Card information | Treat the value of cardinfo as a string (fields within cardinfo do not need to be included in sorting) |
| cardinfo.card_holder | string | Naam van de kaarthouder | Verplicht |
| cardinfo.card_number | string | Kaartnummer | Verplicht |
| cardinfo.expiration_month | string | Vervalmaand van de kaart, MM | Verplicht |
| cardinfo.expiration_year | string | Vervaljaar van de kaart, YYYY | Verplicht |
| cardinfo.cvc | string | CVC (het opslaan van de CVC in welke vorm dan ook is in strijd met PCI DSS-vereisten) | Verplicht |
| amount | String | Numeric amount. For example, € 24.99 moet worden geschreven als 24.99. Als operation gelijk is aan 10, stel amount in op0 | Verplicht |
| currency | String | ISO 4217 currency code, bijvoorbeeld EUR of CHF | Verplicht |
| description | String | Bestelomschrijving | Verplicht |
| form_type | String | Type of the returned url. Default: 01. 01.completed, 02.iframe | Optioneel |
| demo | String | Aangepast veld | Optioneel |
| string | E-mailadres van de kaarthouder | Verplicht | |
| timeout | String | Vervaltijd in minuten (0-1440) | Verplicht |
| redirect_url | String | Redirect URL after payment | Optioneel |
| notify_url | String | URL voor asynchrone melding na betaling | Verplicht |
| request_id | String | Unieke aanvraag-ID; aanbevolen wordt een combinatie van cijfers en letters van ten minste 24 characters is recommended | Verplicht |
Signature example:
Gesorteerde parameters aaneengevoegd tot een queryreeks in URL-stijl
"3ds_initiate=01&amount=0.1¤cy=EUR&description=test&email=JohnSmith@gmail.com&form_type=01&method=v3.CreateCardPayments¬ify_url=https://www.yabandpay.com/notify&operation=11&order_id=1725875388&pay_method=online&request_id=dxktqiedfpkswnripi631ppg6fl2uoym&sub_pay_method=Cards HPP&time=1725875388&timeout=30&user=YOUR_CASHIER_UID"
Sign stringA met secret_key
De resulterende handtekening is:
"YOUR_SIGNATURE"
Request example:
{
"user": "YOUR_CASHIER_UID",
"sign": "YOUR_SIGNATURE",
"method": "v3.CreateCardPayments",
"time": 1725875388,
"data": {
"3ds_initiate": "01",
"description": "test",
"timeout": "30",
"pay_method": "online",
"sub_pay_method": "Cards HPP",
"operation": "11",
"form_type": "01",
"order_id": 1725875388,
"amount": "0.1",
"currency": "EUR",
"email": "JohnSmith@gmail.com",
"notify_url": "https://www.yabandpay.com/notify",
"request_id": "dxktqiedfpkswnripi631ppg6fl2uoym"
}
}
Response example:
{
"status": true,
"code": "200",
"data": {
"order_id": "YOUR_ORDER_ID",
"trade_id": "2b2aa1af-6e97-4c01-8c52-86200bf66c82",
"amount": "0.1",
"currency": "EUR",
"url": "https://pay.yabandpay.com/pay_method/Y3JlZGl0Y2FyZA==/MmIyYWExYWYtNmU5Ny00YzAxLThjNTItODYyMDBiZjY2Yzgy",
"state": "processing"
},
"message": "",
"response_id": "202409091749500451314672"
}
Aanvullende informatie:
MIT & CIT :
MIT = Merchant Initiated subsequent transactions. Token-betalingen die door de handelaar worden gestart.
CIT = Cardholder Initiated Subsequent transactions. Token-betalingen waarbij de klant betrokken is. Geef bij het activeren van betalingen aan of u MIT of CIT nodig hebt, zodat de juiste modus kan worden ingesteld.
Payment result:
-
Een geslaagde aanvraag retourneert "status": true.
-
Een mislukte aanvraag retourneert "status": false.
Stuur de klant door naar de geretourneerde url. Nadat de klant daar de kaartgegevens heeft ingevoerd en de betaling heeft voltooid, wordt deze doorgestuurd naar url, de klant wordt doorgestuurd naar redirect_url. We raden sterk aan zowel Query Order and Asynchronous Notifications te gebruiken om de betalingsstatussen actueel en nauwkeurig te houden.
Returned Token:
-
Nadat de klant toestemming heeft gegeven en de betaling is geslaagd, retourneert YabandPay payment_token_object via een asynchrone melding.
-
Als de klant geen toestemming geeft of de betaling niet voltooit, retourneert de asynchrone melding geen payment_token_object.
3DS low-value exemption:
Transacties tot de onderstaande limieten komen mogelijk in aanmerking als transactie met een laag bedrag. Als het bestelbedrag niet hoger is dan het toepasselijke bedrag hieronder, mag transactiecode 02 (vrijstelling voor lage bedragen) met goedkeuring worden gebruikt.
| # | Currency | Amount |
|---|---|---|
| 1 | EUR | 30 |
| 2 | DKK | 225 |
| 3 | GBP | 27 |
| 4 | SEK | 310 |
| 5 | ISK | 5000 |
| 6 | NOK | 325 |
| 7 | CHF | 32 |
| 8 | PLN | 135 |
| 9 | USD | 36 |
Response codes:
| Status | Code | Message |
|---|---|---|
| true | 200 | |
| false | -1000 | Internal error |
| false | -403 | The signature Error |
| false | -2001 | The user not exist |
| false | -3001 | Required field is missing |
| false | -4118 | Incorrect request ID |
| false | -4120 | No operational permissions |
