Laatst gewijzigd 9/12/2015

1. Inleiding

Ingenico ePayments DirectLink biedt u de mogelijkheid om server-to-server integratie met ons platform op te zetten. De klant blijft op een van uw pagina's, die de betaalgegevens beveiligd naar onze servers stuurt.

U kunt DirectLink ook gebruiken voor onderhoud op transacties, ongeacht of die werden gestart in DirectLink of bv. in e-Commerce-modus.

Met DirectLink komt de klant van de handelaar (uw klant) niet in aanraking met ons systeem. Uw systeem stuurt alle nodige informatie voor de betaling rechtstreeks naar ons systeem in een HTTPS POST-verzoek. Ons systeem vraagt de financiële transactie (synchroon of asynchroon) aan bij de desbetreffende acquirer en stuurt het antwoord terug naar uw server in XML-formaat. Uw programma leest het antwoord en gaat voort met de verwerking.

Bijgevolg bent u verantwoordelijk voor het verzamelen en bewaren van de vertrouwelijke betaalgegevens van uw klant en moet u de vertrouwelijkheid en beveiliging van die gegevens garanderen door middel van versleutelde internetcommunicatie en serverbeveiliging.

Om persoons- en kaartgegevens op te slaan, moet u PCI-conform zijn.

2. Algemene procedures en veiligheidsinstellingen

Deze algemene procedures en veiligheidscontroles gelden voor alle DirectLink-verzoeken: nieuwe bestellingsverzoeken, onderhoudsverzoeken en rechtstreekse opvragingen.

2.1 API-gebruiker

Er is een API-gebruiker (Application Program Interface) nodig om DirectLink-verzoeken mee aan te maken.

Dat is een gebruiker die specifiek wordt aangemaakt zodat een toepassing er automatische verzoeken aan het betaalplatform mee kan sturen.

U kunt een API-gebruiker aanmaken in uw Ingenico ePayments-account via 'Configuratie' > 'Gebruikers'. Kies 'Nieuwe gebruiker' en vul de verplichte velden in.

Om van de nieuwe gebruiker een API-gebruiker te maken, vinkt u het vakje 'Special user for API (no access to admin.)' (Speciale gebruiker voor API (geen toegang tot beheer)) aan.

Een API-gebruiker aanmaken 

Hoewel voor een API-gebruiker de diverse gebruikersprofielen beschikbaar zijn, raden wij u ten zeerste aan deze gebruiker te configureren met het profiel 'Admin'.
Als u de rechten voor het onderhoud van transacties (terugbetalingen, annuleringen enz.) wilt beperken, kunt u het gebruikersprofiel later nog wijzigen, bv. in 'Encoder'.

Als u twijfelt, raden we u aan het profiel 'Admin' te kiezen of de Gebruikersprofielen (User Manager) te bekijken voor meer informatie.

Het wachtwoord van een API-gebruiker hoeft niet regelmatig te worden gewijzigd. Dat is gemakkelijker wanneer het wachtwoord expliciet moet worden opgenomen in de code van uw toepassing. Wij raden u echter aan het wachtwoord van tijd tot tijd te wijzigen.

Meer informatie over soorten gebruikers en hoe u het wachtwoord van de API-gebruiker wijzigt, vindt u in Soorten gebruikers (User Manager).

2.2 Verzoekformulier

Voor nieuwe bestellingsverzoeken, onderhoudsverzoeken en rechtstreekse opvragingen moet u verzoeken met bepaalde parameters naar specifieke URL's sturen. De parameters van uw nieuwe bestelling / onderhoud / opvraging moeten als volgt worden verstuurd in een POST-verzoek:

PSPID=waarde1&USERID=waarde2&PSWD=waarde3&…

Het type/subtype dat het mediatype aangeeft in het veld Content Type in de header van het POST-verzoek, moet 'application/x-www-form-urlencoded' zijn.

DirectLink werkt volgens de modus “één verzoek – één antwoord”: elke betaling wordt afzonderlijk verwerkt. Ons systeem verwerkt individuele transactieverzoeken via DirectLink en kan synchroon werken (als die optie technisch ondersteund wordt). Dat wil zeggen dat we wachten op het antwoord van de bank alvorens een XML-antwoord op het verzoek te sturen.

2.3 Veiligheid

Wanneer wij een verzoek op onze servers ontvangen, controleren wij de versleuteling en het IP-adres van waar het verzoek werd verzonden.

2.3.1 Versleuteling

DirectLink maakt gebruik van een solide, veilig communicatieprotocol. DirectLink API is een reeks instructies die worden ingediend met standaard HTTPS POST-verzoeken.

Aan serverzijde gebruiken we een certificaat dat is uitgereikt door Verisign. De TLS-versleuteling garandeert dat u met onze servers communiceert en dat uw gegevens versleuteld worden verstuurd. Aan clientzijde is geen TLS-certificaat nodig.

Wanneer wij een verzoek ontvangen, controleren wij de versleuteling. Handelaars mogen alleen met ons verbinding maken in beveiligde https-modus met behulp van TLS-protocollen, en wij raden u ten zeerste aan de recentste en veiligste versies te gebruiken. Momenteel zijn dat TLS 1.1 en 1.2.

2.3.2 IP-adres

Voor elk verzoek controleert ons systeem het IP-adres van waar het verzoek afkomstig is om er zeker van te zijn dat de verzoeken worden verzonden vanaf uw server (de server van de handelaar). U moet, op de pagina 'Technical instellingen' van uw account, in het veld IP-adres in de sectie 'Verificatie voor Ingenico ePayments DirectLink...' van het tabblad 'Verificatie data en herkomst', de IP-adressen of IP-adresbereiken opgeven van de servers die uw verzoeken sturen.

Als het IP-adres van oorsprong niet werd opgegeven in het voorziene veld 'IP-adres', krijgt u de foutboodschap “unknown order/1/i/”. Het IP-adres van waar het verzoek werd verzonden, wordt ook weergegeven in het foutbericht.

2.3.3 SHA-handtekening

De SHA-handtekening werkt volgens het principe dat uw server (de server van de handelaar) voor elke bestelling een unieke tekenreeks aanmaakt, die wordt gehasht met het algoritme SHA-1, SHA-256 of SHA-512. Het resultaat van die hash wordt vervolgens naar ons gestuurd in uw bestellingsverzoek. Ons systeem herberekent die handtekening om de integriteit te controleren van de bestellingsgegevens die we in het verzoek ontvingen.

Meer informatie vindt u in SHA-IN-versleuteling (Ingenico ePayments e-Commerce-documentatie) - het principe is identiek in e-Commerce- en DirectLink-modus.

Voor DirectLink moet de SHA-IN-wachtzin geconfigureerd worden in de sectie 'Verificatie voor Ingenico ePayments DirectLink...' van het tabblad 'Verificatie data en herkomst' op de pagina 'Technische instellingen'.

2.4 Verwerking van het antwoord

Wij sturen een XML-antwoord op uw verzoek. Let erop dat uw systemen dit XML-antwoord zo tolerant mogelijk verwerken om later problemen te voorkomen: vermijd hoofdlettergevoelige attribuutnamen, leg geen specifieke volgorde voor de teruggezonden attributen in antwoorden op, zorg ervoor dat nieuwe attributen in het antwoord geen fouten genereren enz.

3. Een nieuw bestellingsverzoek indienen

3.1 Verzoek-URL

  • De verzoek-URL in de TEST-omgeving is https://ogone.test.v-psp.com/ncol/test/orderdirect.asp.
  • De verzoek-URL in de PRODUCTIE-omgeving is https://secure.ogone.com/ncol/prod/orderdirect.asp.

Vervang 'test' door 'prod'

Vervang “test” door “prod” in de verzoek-URL wanneer u overstapt op uw productie-account. Als u vergeet de verzoek-URL te wijzigen wanneer u in productie begint te werken met echte bestellingen, worden uw transacties verstuurd naar de testomgeving en niet verwerkt door de acquirers / banken.

3.2 Verzoekparameters

Onderstaande tabel bevat de verzoekparameters voor het versturen van een nieuw bestellingsverzoek:

Formaat: AN = alfanumeriek / N = numeriek, maximaal aantal toegelaten tekens
Veld Omschrijving Formaat Verplicht
PSPID
De naam waaronder u bent geregistreerd in ons systeem.
AN, 30
Ja
ORDERID
Uw unieke bestellingsnummer (referentie van de handelaar).
AN, 40
Ja
USERID
Naam van uw applicatiegebruiker (API-gebruiker). Meer informatie over hoe u een API-gebruiker aanmaakt, vindt u in de User Manager-documentatie.
AN, 20 (min. 2)
Ja
PSWD
Wachtwoord van de API-gebruiker (USERID).
AN
Ja
AMOUNT
Te betalen bedrag, VERMENIGVULDIGD MET 100, aangezien het formaat van het bedrag geen decimaaltekens of andere scheidingstekens mag bevatten.
N, 15 Ja
CURRENCY
Valuta van de bestelling in ISO-lettercode, bijvoorbeeld: EUR, USD, GBP, CHF enz.
AN, 3 Ja
CARDNO
Kaart- / rekeningnummer.
AN, 21
Ja
ED
Vervaldatum.
MM/JJ of MMJJ
Ja
COM
Beschrijving van de bestelling.
AN, 100
Nee
CN
Naam van de klant.
AN, 35
Nee
EMAIL
E-mailadres van de klant.
AN, 50
Nee
SHASIGN
Handtekening (gehashte tekenreeks) om de gegevens te authenticeren (zie SHA-IN-versleuteling).
AN, 128
Ja
CVC
Kaartverificatiecode (Card Verification Code). Afhankelijk van het merk van de kaart is de verificatiecode een code van 3 of 4 cijfers op de voor- of achterkant van de kaart, een uitgiftenummer, een startdatum of een geboortedatum.
N, 5
Ja
ECOM_PAYMENT_
CARD_VERIFICATION
Alternatief voor de kaartverificatiecode: geboortedatum / uitgiftenummer / enz. (afhankelijk van uw land of bank)
N, 5
Nee
OWNERADDRESS
Straatnaam en huisnummer van de klant.
AN, 50
Nee
OWNERZIP
Postcode van de klant.
AN, 10
Nee
OWNERTOWN
Gemeente of stad van de klant.
AN, 40
Nee
OWNERCTY
Land van de klant, bv. BE, NL, FR enz.
AN, 2 Nee
OWNERTELNO
Telefoonnummer van de klant.
AN, 30
Nee
OPERATION

Bepaalt het type gevraagde transactie.

U kunt een standaardbewerking configureren (betaalprocedure) in de sectie 'Default operation code' (Standaard bewerkingscode) van het tabblad 'Global transaction parameters' (Algemene transactieparameters') op de pagina 'Technical Information' (Technische informatie). Wanneer u in het verzoek een bewerkingscode verzendt, overschrijft die de standaardwaarde.

Mogelijke waarden:
  • RES: verzoek om autorisatie
  • SAL: verzoek om directe verkoop
  • RFD: terugbetaling, niet gekoppeld aan een voorafgaande betaling, dus geen onderhoudsbewerking voor een bestaande transactie (u kunt deze bewerking niet gebruiken zonder specifieke toelating van uw acquirer).

Optioneel:

  • PAU: verzoek om pre-autorisatie:
      In overleg met uw acquirer kunt u deze bewerkingscode gebruiken om tijdelijk een bedrag op de kaart van een klant te reserveren. Dat is een courante praktijk in de reis- en verhuurbranche.
      PAU / pre-autorisatie kan momenteel alleen gebruikt worden voor MasterCard-transacties en wordt door een beperkt aantal acquirers ondersteund. U kunt deze bewerkingscode niet instellen als standaard in uw Ingenico ePayments-account.
      Als u PAU gebruikt voor transacties via acquirers of met kaartmerken die pre-autorisatie niet ondersteunen, worden die transacties niet geblokkeerd, maar verwerkt als normale (RES) autorisaties.
A, 3
Ja
WITHROOT
Voegt een root-element toe aan ons XML-antwoord. Mogelijke waarden: ‘Y’ of leeg.
Y of <leeg>
Nee
REMOTE_ADDR
IP-adres van de klant (alleen voor fraudedetectiemodule). Als geen landcontrole moet worden uitgevoerd op het IP-adres, stuurt u 'NONE'.
AN
Nee
RTIMEOUT

Time-out van het verzoek voor de transactie (in seconden, waarde tussen 30 en 90)

Belangrijk: de waarde die u hier instelt, moet kleiner zijn dan de time-outwaarde in uw systeem (!)

N, 2
Nee
ECI

Electronic Commerce Indicator (E-commerce indicator - ECI).

U kunt een standaard ECI-waarde configureren op de accountpagina 'Technical information' (Technische informatie), tabblad 'Global transaction parameters' (Algemene transactieparameters), sectie 'Default ECI value' (Standaard ECI-waarde). Wanneer u in het verzoek een ECI-waarde verzendt, overschrijft die de standaard ECI-waarde.

Mogelijke (numerieke) waarden:
0 - Doorgehaald
1 - Handmatig ingevoerd (MOTO) (kaart niet aanwezig)
2 - Herhaling (van MOTO)
3 - Afbetalingen
4 - Handmatig ingevoerd, kaart aanwezig
7 - E-commerce met SSL-codering
9 - Herhaling (van e-commerce)
N, 2
Nee

De lijst van mogelijk te versturen parameters kan langer zijn voor handelaars die in hun account bepaalde opties of functies geactiveerd hebben. Raadpleeg de documentatie van de desbetreffende optie voor meer informatie over extra parameters die aan de optie gekoppeld zijn.

Volgende verzoekparameters zijn verplicht voor nieuwe bestellingen:

  • PSPID en USERID
  • PSWD
  • ORDERID
  • AMOUNT (x 100)
  • CURRENCY
  • CARDNO
  • ED
  • CVC
  • OPERATION

3.3 Testpagina

Onze testpagina om bestellingsverzoeken te versturen in DirectLink vindt u hier: https://ogone.test.v-psp.com/ncol/test/testodl.asp.

3.4 Specifieke betaalmethoden uitsluiten

Als er betaalmethoden zijn die u een klant niet ter beschikking wilt stellen, kunt u dat doen met behulp van een parameter.
Dit is vooral handig voor submerken, wanneer u een merk (bijvoorbeeld MasterCard) wilt aanvaarden, maar niet één van de submerken ervan (bijvoorbeeld Maestro).

Dit is de parameter:

Veld Gebruik
EXCLPMLIST
Lijst van betaalmethoden en/of creditcardmerken die NIET mogen worden gebruikt.
U moet de waarden van elkaar scheiden met een “;” (puntkomma).

Als een klant probeert te betalen met een kaart die gelinkt is aan een betaalmethode die en/of een (sub)merk dat u met de parameter EXCLPMLIST hebt uitgesloten, wordt het foutbericht “Card number incorrect or incompatible” (Kaartnummer onjuist of niet compatibel) teruggestuurd met het veld NCERRORPLUS.

3.5 Bestellingsverzoek met behulp van 3-D Secure

Ons systeem ondersteunt het gebruik van 3-D Secure met DirectLink.

Belangrijk

  • Als u 3-D Secure met DirectLink wenst te gebruiken, dan moet u de optie D3D in uw account geactiveerd hebben.">
  • Sommige acquirers vereisen het gebruik van 3-D Secure. Vraag na bij uw acquirer of dit voor u het geval is.

3.6 Credit-/debitcards splitsen

De functie om VISA en MasterCard te splitsen in een debit- en een creditbetaalmethode stelt u in staat om ze aan uw klanten aan te bieden als twee verschillende betaalmethoden (bv. VISA Debit en VISA Credit). U kunt ook beslissen om van beide gesplitste merken slechts één optie te aanvaarden.

Om de splitsing in credit- en debitcards te gebruiken via DirectLink moet u de parameter CREDITDEBIT opnemen in de velden die u naar de pagina orderdirect.asp stuurt (en dus ook in de SHA-IN-berekening!).

Veld Formaat
CREDITDEBIT "C": creditcard
"D": debitcard

Aanverwante fout: als de koper debitcard kiest als betaalmethode en vervolgens een creditcardnummer invoert, wordt een foutcode teruggestuurd: ‘Wrong brand/Payment method was chosen’ (Verkeerd merk / betaalmethode gekozen).

Als de betaling met succes verwerkt is met de parameter CREDITDEBIT wordt dezelfde parameter ook teruggestuurd in het XML-antwoord en/of kan hij worden opgevraagd met een rechtstreekse opvraging. Terwijl de ingediende waarde echter C of D is, is de teruggestuurde waarde 'CREDIT' of 'DEBIT'.

U vindt die teruggestuurde waarden ook in het transactieoverzicht via 'Beheer transacties' en 'Financiële historiek/Dagtotalen' en in rapporten die u nadien kunt downloaden.

Configuratie in uw account

In uw Ingenico ePayments-account kunt u de functie 'splitsen' ook activeren en configureren per betaalmethode. Ga naar Split credit/debit cards voor meer informatie.

4. Antwoord op een bestelling

Onze server stuurt een XML-antwoord op elk verzoek:

Voorbeeld van een XML-antwoord op een bestellingsverzoek

<?xml version=”1.0”?>
<ncresponse orderID=”99999” PAYID=”1111111” NCSTATUS=”0” NCERROR=”” NCERRORPLUS=”” ACCEPTANCE=”12345” STATUS=”5” ECI=”7” amount="125" currency="EUR" PM="CreditCard" BRAND="VISA"/>

Onderstaande tabel bevat een lijst van de ncresponse-tagattributen:

Veld
Omschrijving
ACCEPTANCE
De door de acquirer teruggestuurde aanvaardingscode.
amount
Bedrag van de bestelling (niet vermenigvuldigd met 100).
BRAND
Kaartmerk of gelijkaardige informatie voor andere betaalmethoden.
currency
Valuta van de bestelling.
ECI
Electronic Commerce Indicator (E-commerce indicator - ECI).
NCERROR
Foutcode.
NCERRORPLUS
Verklaring van de foutcode.
NCSTATUS
Eerste teken van NCERROR.
orderID
Uw bestellingsreferentie.
PAYID
Betalingsreferentie in ons systeem.
PM
Betaalmethode.
STATUS
Transactiestatus. (Mogelijke statussen)

De attributenlijst kan langer zijn voor handelaars die in hun account bepaalde opties (zoals Fraudedetectie) hebben geactiveerd. Raadpleeg de documentatie van de desbetreffende optie voor meer informatie over extra antwoordattributen die aan de optie gekoppeld zijn.

Dubbel verzoek

Als u de verwerking aanvraagt van een reeds bestaande (en correct verwerkte) orderID, bevat ons XML-antwoord de PAYID die overeenkomt met de bestaande orderID, de ACCEPTANCE die de acquirer gaf bij de vorige verwerking, de STATUS “0” en NCERROR “50001113”.

5. Rechtstreeks onderhoud

Met een rechtstreeks onderhoudsverzoek van uw toepassing kunt u:

  • De gegevens (betaling) van een geautoriseerde bestelling automatisch registreren (in plaats van handmatig in de backoffice);
  • De autorisatie van een bestelling annuleren;
  • De autorisatie van een bestelling vernieuwen;
  • Een betaalde bestelling terugbetalen;

Gegevensregistratie, annulering van autorisaties en vernieuwing van autorisaties zijn specifiek voor handelaars die hun account / verzoeken hebben geconfigureerd om de autorisatie en gegevensregistratie in twee stappen uit te voeren.

5.1 Onderhoudsverzoek

5.1.1 Verzoek-URL

  • De verzoek-URL in de TEST-omgeving is https://ogone.test.v-psp.com/ncol/test/maintenancedirect.asp.
  • De verzoek-URL in de PRODUCTIE-omgeving is https://secure.ogone.com/ncol/prod/maintenancedirect.asp.

Vervang 'test' door 'prod'

Vervang “test” door “prod” in de verzoek-URL wanneer u overstapt op uw productie-account. Als u vergeet de verzoek-URL te wijzigen wanneer u begint te werken met echte bestellingen, worden uw onderhoudstransacties verstuurd naar de testomgeving en niet verstuurd naar de acquirers / banken.

5.1.2 Verzoekparameters

Onderstaande tabel bevat de verplichte verzoekparameters om een onderhoudsbewerking uit te voeren:

Veld Omschrijving
AMOUNT
Bedrag van de bestelling vermenigvuldigd met 100.

Dit is alleen verplicht als het bedrag van het onderhoud verschilt van het bedrag van de oorspronkelijke autorisatie. Wij raden echter aan om deze parameter altijd te gebruiken.

Ons systeem zal controleren of het bedrag van de onderhoudstransactie niet groter is dan het bedrag van de autorisatie / betaling.
OPERATION

Mogelijke waarden:

  • REN: autorisatie vernieuwen, als de oorspronkelijke autorisatie niet langer geldig is.
  • DEL: autorisatie verwijderen, waarna de transactie blijft openstaan voor eventuele latere onderhoudsbewerkingen.
  • DES: autorisatie verwijderen, waarna de transactie wordt afgesloten.
  • SAL: gedeeltelijke gegevensregistratie (betaling), waarna de transactie blijft openstaan voor een eventuele volgende gegevensregistratie.
  • SAS: (laatste) gedeeltelijke of volledige gegevensregistratie (betaling), waarna de transactie wordt afgesloten (voor verdere gegevensregistratie).
  • RFD: gedeeltelijke terugbetaling (van een betaalde bestelling), waarna de transactie blijft openstaan voor een eventuele volgende terugbetaling.
  • RFS: (laatste) gedeeltelijke of volledige terugbetaling (van een betaalde bestelling), waarna de transactie wordt afgesloten.

Merk voor DEL en DES op dat niet alle acquirers de verwijdering van een autorisatie ondersteunen. Als uw acquirer DEL / DES niet ondersteunt, zullen wij niettemin de verwijdering van de autorisatie simuleren in de backoffice.

ORDERID U kunt de PAYID of de orderID sturen om de oorspronkelijke bestelling te identificeren. Wij raden u aan de PAYID te gebruiken.
PAYID
PSPID De PSPID van uw account.
PSWD Het wachtwoord van uw API-gebruiker.
SHASIGN Handtekening (gehashte tekenreeks) om de gegevens te authenticeren (zie SHA-IN-versleuteling).
USERID Uw API-gebruiker.

5.1.3 Testpagina

Rechtstreekse onderhoudsverzoeken kunt u hier testen: https://ogone.test.v-psp.com/ncol/test/testdm.asp

5.2 Antwoord op een onderhoudsverzoek

Onze server stuurt een XML-antwoord op het onderhoudsverzoek:

Voorbeeld van een XML-verzoek op een rechtstreeks onderhoudsverzoek
<?xml version=”1.0”?>
<ncresponse orderID=”99999” PAYID=”1111111” PAYIDSUB=”3” NCSTATUS=”0” NCERROR=”” NCERRORPLUS=”” ACCEPTANCE=”12345” STATUS="91" amount="125" currency="EUR"/> 

Onderstaande tabel bevat een lijst van de ncresponse-tagattributen:

Veld
Omschrijving
ACCEPTANCE De door de acquirer teruggestuurde aanvaardingscode
AMOUNT Bedrag van de bestelling (niet vermenigvuldigd met 100)
CURRENCY Valuta van de bestelling
NCERROR Foutcode
NCERRORPLUS Verklaring van de foutcode
NCSTATUS Eerste teken van NCERROR
ORDERID
De referentie van uw bestelling
PAYID Betalingsreferentie in ons systeem
PAYIDSUB De identificatie van het historiekniveau van de onderhoudsbewerking op de PAYID
STATUS Transactiestatus (Mogelijke statussen)

De standaard ncresponse-tagattributen zijn dezelfde als voor het XML-antwoord op een nieuwe bestelling, met uitzondering van het extra attribuut PAYIDSUB.

5.3 Dubbel verzoek

Als u tweemaal om onderhoud verzoekt voor dezelfde bestelling, wordt het tweede verzoek in theorie geweigerd met foutcode “50001127” (Bestelling niet geautoriseerd), aangezien de eerste, geslaagde transactie de status van de bestelling heeft gewijzigd.

6. Rechtstreekse opvraging

Met een verzoek om rechtstreekse opvraging vanuit uw toepassing kunt u de status van een bestelling automatisch opvragen (in plaats van handmatig in de backoffice). U kunt slechts één betaling per keer opvragen, en u ontvangt slechts een beperkt aantal gegevens over de bestelling.

Als u meer informatie over de bestelling nodig hebt, kunt u de transactie opzoeken in de backoffice of een handmatige of automatische bestandsdownload uitvoeren (zie Uw transacties raadplegen en Batch).

6.1 Opvragingsverzoek

6.1.1 Verzoek-URL

  • De verzoek-URL in de TEST-omgeving is https://ogone.test.v-psp.com/ncol/test/querydirect.asp.
  • De verzoek-URL in de PRODUCTIE-omgeving is https://secure.ogone.com/ncol/prod/querydirect.asp.

Vervang 'test' door 'prod'

Vervang “test” door “prod” in de verzoek-URL wanneer u overstapt op uw productie-account.

6.1.2 Verzoekparameters

Onderstaande tabel bevat de verplichte verzoekparameters om een rechtstreekse opvraging uit te voeren:

Veld
Omschrijving
ORDERID

U kunt de PAYID of de ORDERID sturen om de oorspronkelijke bestelling te identificeren. Wij raden u aan de PAYID te gebruiken.

PAYID
PAYIDSUB
U kunt de identificatie van het historiekniveau vermelden als u de PAYID gebruikt om de oorspronkelijke bestelling te identificeren (optioneel).
PSPID
De PSPID van uw account.
PSWD
Het wachtwoord van uw API-gebruiker.
USERID
Uw API-gebruiker.

6.1.3 Testpagina

Rechtstreekse opvragingsverzoeken kunt u hier testen: https://ogone.test.v-psp.com/ncol/test/testdq.asp.

6.2 Antwoord op een opvraging

Onze server stuurt een XML-antwoord op het verzoek:

Voorbeeld van een XML-antwoord op een rechtstreekse opvraging

<?xml version=”1.0”?>
<ncresponse orderID=”99999” PAYID=”1111111” PAYIDSUB=”3” NCSTATUS=”0” NCERROR=”” NCERRORPLUS=”” ACCEPTANCE=”12345” STATUS="9" ECI=”7” amount="125" currency="EUR" PM="CreditCard" BRAND="VISA" CARDNO="XXXXXXXXXXXX1111" IP="212.33.102.55"/>

Onderstaande tabel bevat een lijst van de ncresponse-tagattributen:

Veld
Gebruik
ACCEPTANCE De door de acquirer teruggestuurde aanvaardingscode
amount Bedrag van de bestelling (niet vermenigvuldigd met 100)
BRAND Kaartmerk of gelijkaardige informatie voor andere betaalmethoden
CARDNO Het gemaskeerde creditcardnummer
currency Valuta van de bestelling
ECI Electronic Commerce Indicator (E-commerce indicator - ECI)
IP IP-adres van de klant, door ons systeem gedetecteerd in een 3-lagige integratie, of door de handelaar naar ons verzonden in een 2-lagige integratie
NCERROR Foutcode
NCERRORPLUS Verklaring van de foutcode
NCSTATUS Eerste teken van NCERROR
orderID De referentie van uw bestelling
PAYID Betalingsreferentie in ons systeem
PAYIDSUB De identificatie van het historiekniveau van de onderhoudsbewerking op de PAYID
PM Betaalmethode
STATUS Transactiestatus

De standaard ncresponse-tagattributen zijn dezelfde als voor het XML-antwoord op een nieuwe bestelling, met uitzondering van de extra attributen PAYIDSUB, CARDNO en IP. 

De attributenlijst kan langer zijn voor handelaars die in hun account bepaalde opties (zoals Fraudedetectie) hebben geactiveerd. Raadpleeg de documentatie van de desbetreffende optie voor meer informatie over extra antwoordattributen die aan de optie gekoppeld zijn. 

6.2.1 Transacties verwerkt met e-Commerce (gehoste betaalpagina)

Als de transactie waarvan u de status wilt controleren werd verwerkt met e-Commerce (gehoste betaalpagina), ontvangt u mogelijk ook de volgende extra attributen (op voorwaarde dat u die velden hebt meegestuurd bij de oorspronkelijke e-Commerce-transactie).

Veld
Omschrijving
complus*
Een waarde die u wou laten terugsturen
(paramplus content)*
De parameters en hun waarden die u wou laten terugsturen

*Zie de Variabele feedbackparameters (e-Commerce-documentatie).

Voorbeeld van een XML-antwoord op een rechtstreekse opvraging voor een e-Commerce-transactie

<ncresponse orderID=”99999” PAYID=”1111111” PAYIDSUB=”3” NCSTATUS=”0” NCERROR=”” NCERRORPLUS=”” ACCEPTANCE=”12345” STATUS="9" amount="125" currency="EUR" PM="CreditCard" BRAND="VISA" CARDNO="XXXXXXXXXXXX1111" IP="212.33.102.55" COMPLUS="123456789123456789123456789" SessionID="126548354" ShopperID="73541312"/>

6.3 Mogelijke antwoordstatussen

Het veld STATUS bevat de status van de transactie (zie Mogelijke statussen).

Alleen de volgende status houdt specifiek verband met de opvraging zelf:

Status
NCERROR
NCSTATUS
Omschrijving
88
De opvraging op querydirect.asp is mislukt

6.4 Rechtstreekse opvraging als controle

De responstijd voor een DirectLink-transactieverzoek bedraagt doorgaans enkele seconden; bij sommige acquirers kunnen de responstijden echter langer zijn. 

Als u na 30 seconden van ons systeem geen antwoord hebt ontvangen, kunt u een verzoek sturen naar querydirect.asp om de status van uw recentste transactie naar orderdirect.asp op te vragen. Als u onmiddellijk antwoord krijgt met een niet-finale status voor de transactie, zijn er mogelijk problemen bij de acquirer.

Als u op die directe opvraging na 10 seconden nog geen antwoord hebt gekregen, zijn er mogelijk problemen bij ons. U kunt dit verzoek naar querydirect.asp elke 30 seconden herhalen tot u merkt dat u binnen 10 seconden een antwoord krijgt.

Opmerking
  • Dit controlesysteem kan alleen problemen bij ons detecteren als er ook een controle bij u is om na te gaan of de verzoeken uw servers correct verlaten.
  • Een probleem bij ons wordt niet noodzakelijkerwijs veroorzaakt door een defect, maar kan ook het gevolg zijn van lange responstijden, bijvoorbeeld vanwege databaseproblemen.
  • Gebruik die controles oordeelkundig om onze servers niet te bombarderen met verzoeken, zo niet kunnen wij verplicht zijn uw toegang tot de pagina querydirect.asp te beperken. 

Belangrijk

Om ons systeem te beschermen tegen onnodige overbelasting verbieden wij controles op de werking van het systeem die valse transacties of systematische opvragingen sturen en systematische opvragingen om voor elke transactie feedback te krijgen.

7. Privacybeleidverzoek

Met een privacybeleidverzoek kunt u alle informatie opvragen die u nodig hebt om uw klanten over onze services te informeren om te voldoen aan de AVG-verordening.

Volgens het AVG-beleid moet u de gegevens aan uw klant weergeven voordat zij hun transactie valideren. Deze informatie moet idealiter worden weergegeven op dezelfde pagina als waar uw klant zijn kaart-/accountgegevens invult.

7.1 Informeer hoe privacygegevens van een klant wordt verwerkt

7.1.1.1 Verzoek-URL

• De verzoek-URL in de TEST-omgeving is https://secure.ogone.com/ncol/test/privacy-policy.asp
• De verzoek-URL in de PRODUCTIE-omgeving is https://secure.ogone.com/ncol/prod/privacy-policy.asp
Vervang "test" door "prod"
Vervang "test" door "prod" in de verzoek-URL wanneer u overstapt op uw productie-account.

7.1.1.2 Verzoekparameters

De volgende tabel bevat de verplichte verzoekparameters die naar uw klant moeten worden verzonden met betrekking tot het gebruik van hun privacygegevens:
Veld
Formaat
Beschrijving
USERID  String Uw API-gebruiker
PSWD  String Wachtwoord van uw API-gebruiker
PSPID
 String PSPID van uw account
BRAND  String (bijv. Visa)

Optioneel: Merk betaalmethode
U kunt dit veld meerdere keren verzenden om het resultaat van verschillende merken tegelijk te krijgen.
• Het verzenden van geen merk is hetzelfde als het verzenden van al uw actieve merken.

• Lege/verkeerd geformatteerde merken worden genegeerd. 
LANGUAGE  ISO 639-1: Tweelettercodes (bijv. FR) Optioneel: De taal waarin de tekst wilt ophalen.
Indien niet verstrekt wordt de tekst teruggestuurd naar de geconfigureerde taal van de merchant.

7.1.1.3 Testpagina

Rechtstreekse opvragingsverzoeken kunt u hier testen: https://secure.ogone.com/ncol/test/privacy-policy.asp

7.1.1 Verzoek-URL

• De verzoek-URL in de TEST-omgeving is https://secure.ogone.com/ncol/test/privacy-policy.asp

• De verzoek-URL in de PRODUCTIE-omgeving is https://secure.ogone.com/ncol/prod/privacy-policy.asp
Vervang "test" door "prod"
Vervang "test" door "prod" in de verzoek-URL wanneer u overstapt op uw productie-account.

7.1.2 Verzoekparameters

De volgende tabel bevat de verplichte verzoekparameters die naar uw klant moeten worden verzonden met betrekking tot het gebruik van hun privacygegevens:

Veld
Formaat
Beschrijving
USERID  String Uw API-gebruiker
PSWD  String Wachtwoord van uw API-gebruiker
PSPID
 String PSPID van uw account
BRAND  String (bijv. Visa)

Optioneel: Merk betaalmethode
U kunt dit veld meerdere keren verzenden om het resultaat van verschillende merken tegelijk te krijgen.
• Het verzenden van geen merk is hetzelfde als het verzenden van al uw actieve merken.

• Lege/verkeerd geformatteerde merken worden genegeerd. 
LANGUAGE  ISO 639-1: Tweelettercodes (bijv. FR) Optioneel: De taal waarin de tekst wilt ophalen.
Indien niet verstrekt wordt de tekst teruggestuurd naar de geconfigureerde taal van de merchant.

7.1.3 Testpagina

Rechtstreekse opvragingsverzoeken kunt u hier testen: https://secure.ogone.com/ncol/test/privacy-policy.asp

7.2 Antwoord op een opvraging

De volgende is een lijst met XML-elementen en de teruggestuurde voorbeelden van XML-antwoorden voor verschillende resultaten.

Achternaam Formaat Beschrijving
Response
Complex Hoofdknooppunt, altijd aanwezig
Response.Status
String, mogelijke waarden: 
Success, SuccessWithWarnings, Error
Altijd aanwezig
Response.Body
Complex
Altijd aanwezig als Response.Status = Success or SuccessWithWarnings
Response.Body.Html
String / html
Leeg als Response.Status = SuccessWithWarnings & Response.Warnings.Warning.Code = NoContent
Response.Errors
Complex
Alleen aanwezig als Response.Status = Error
Response.Errors.Error
Complex
Kan meerdere keren binnen een knooppunt <Errors> optreden
Response.Warnings
Complex
Alleen aanwezig als Response.Status = SuccessWithWarnings of Error
Response.Warnings.Warning Complex
Kan meerdere keren binnen een knooppunt <Warnings> optreden
Response.Errors.Error.Code
Response.Warnings.Warning.Code
String, mogelijke waarden: 
•Binnen een knooppunt <Error>: Unauthorized, InternalServerError
•Binnen een knooppunt <Warning>: NoContent
Altijd aanwezig in een knooppunt <Error> of <Warning>
Response.Errors.Error.Message
Response.Warnings.Warning.Message 
String
Optioneel

Als u Response.Status=Error tegenkomt, raadpleegt u Response.Errors.Error om dit te verhelpen. Hierna volgen twee succesvolle voorbeelden:

1. Voorbeeld van een XML-antwoord voor succes met waarschuwingen. Het voorbeeld geeft als er geen privacygegevens bekend hoeven te worden gemaakt aan de klant. 

<?xml version="1.0" encoding="utf-8"?>
 <Response>
    <Status>SuccessWithWarnings</Status>
    <Warnings>
        <Warning>
            <Code>NoContent</Code>
        </Warning>
    </Warnings>
    <Body>
        <Html/>
    </Body>
 </Response>

2. Voorbeeld van een XML-antwoord voor succes met inhoud. Het voorbeeld geeft een weergave met 2 secties aan.

<?xml version="1.0" encoding="utf-8"?>
<Response>
    <Status>Success</Status>
    <Body>
        <Html><![CDATA[<ul><li><h2>Title 1</h2><p>Content 1</p></li><li><h2>Title 2 (VISA, American Express) </h2><p>Content 2</p></li></ul>]]></Html>
    </Body>
</Response>

8. Uitzonderingen voor betaalmethoden

Voor sommige betaalmethoden wijken de parameterwaarden af van de standaard creditcardwaarden.

8.1 Automatische incasso

8.1.1 Automatische incasso Oostenrijk

Onderstaande tabel bevat de specifieke parameterwaarden voor de verzending van Oostenrijkse automatische incassotransacties via DirectLink.

Formaat: AN = alfanumeriek / N = numeriek, maximaal aantal toegelaten tekens
Veld Omschrijving Formaat / Waarde
CARDNO

Bankrekeningnummer

AN, 21

Formaat: XXXXXXXXXXXBLZYYYYY

XXXXXXXXXXX: rekeningnummer, numeriek, 11 cijfers.
YYYYY: Bankcode (Bankleitzahl), 5 cijfers. 
CN Naam van de bankrekeninghouder AN, 35
ED Vervaldatum
„99/99“ of „9999“
OPERATION

Bewerkingscode (uit te voeren actie)

A, 3

Mogelijke waarden:

  • RES: autorisatie
  • SAL/SAS: bedrag debiteren van de bankrekening
  • RFD/RFS: bedrag terugbetalen (*)
OWNERADDRESS Adres van de rekeninghouder AN, 50
OWNERTOWN Gemeente / stad van de rekeninghouder AN, 40
OWNERZIP Postcode van de rekeninghouder AN, 10
PM Betaalmethode AN, 25

“Direct Debits AT”

(*Als de optie Terugbetaling beschikbaar en geactiveerd is, en DTAUS-terugbetalingen beschikbaar zijn)

8.1.2 Automatische incasso Duitsland (ELV)

Onderstaande tabel bevat de specifieke parameterwaarden voor de verzending van ELV-transacties via DirectLink. (niet Wirecard/Billpay)

Formaat: AN = alfanumeriek / N = numeriek, maximaal aantal toegelaten tekens
Veld Omschrijving Formaat / Waarde Verplicht
CARDNO Bankrekeningnummer

IBAN: 22 alfanumerieke tekens

OF

Bankrekeningnummer + BLZ. Formaat: XXXXXXXXXBLZYYYYYYYY
XXXXXXXXXX: rekeningnummer, numeriek, 1 tot 10 cijfers.
YYYYYYYY: Bankcode (Bankleitzahl), 8 cijfers.
Ja
CN Naam van de bankrekeninghouder AN, 35 Ja
ED Vervaldatum „99/99“ of „9999“ Ja
MANDATEID Unieke mandaatreferentie.
Telego:
Indien niet opgegeven gebruikt het platform de ORDERID of PAYID
Opmerking: indien niet opgegeven genereert easycash een waarde.

Telego: AN, 35 / Tekenset: “A-Z a-z 0-9 spatie /-?:().,'+”)
Indien niet opgegeven gebruikt het platform de ORDERID of PAYID

Easycash: Formaat: AN, 27 / Tekenset: “A-Z a-z 0-9 spatie /-?:().,'+”)
Opmerking: indien niet opgegeven genereert easycash een waarde.

Nee
OPERATION Bewerkingscode (uit te voeren actie)

A, 3

Mogelijke waarden:

  • RES: autorisatie
  • SAL/SAS: bedrag debiteren van de bankrekening
  • RFD/RFS: bedrag terugbetalen (*)
Nee
OWNERADDRESS Straatnaam en huisnummer van de rekeninghouder AN, 50 Ja
OWNERTOWN Gemeente / stad van de rekeninghouder AN, 40 Ja
OWNERZIP Postcode van de rekeninghouder AN, 10 Ja
PM Betaalmethode

AN, 25

"Direct Debits DE” 

Ja

Opmerking: Deze velden kunnen worden teruggestuurd in het DirectLink XML-antwoord en moeten worden opgenomen in de SHA-IN-berekening (optioneel ook SHA-OUT)

(*Als de optie Terugbetaling beschikbaar en geactiveerd is, en DTAUS-terugbetalingen beschikbaar zijn)

8.1.3 Automatische incasso Nederland

Onderstaande tabel bevat de specifieke parameterwaarden voor de verzending van Nederlandse automatische incassotransacties via DirectLink.

Formaat: AN = alfanumeriek / N = numeriek, maximaal aantal toegelaten tekens
Veld Omschrijving Formaat / Waarde
CARDNO Bankrekeningnummer Standaard Nederlands rekeningnummer: max. 10 alfanumerieke tekens (indien minder links uitvullen met nullen).

OF

IBAN-rekeningnummer: max. 35 alfanumerieke tekens (SEPA)

CN Naam van de bankrekeninghouder AN, 35
ED Vervaldatum „99/99“ of „9999“
OPERATION

Bewerkingscode (uit te voeren actie)

A, 3

Mogelijke waarden:

  • SAL of SAS: bedrag debiteren van de bankrekening
  • RFD of RFS: bedrag crediteren op de bankrekening (terugbetaling) 
OWNERTOWN Gemeente van de rekeninghouder AN, 40
PM Betaalmethode

AN, 25

“Automatische incasso Nederland” 

Alleen relevant voor SEPA-transacties (*).  
BIC Bankidentificatiecode AN, 11
MANDATEID

Unieke mandaatreferentie.

Opmerking: Indien niet opgegeven wordt de ORDERID gebruikt.

AN, 35

Geen spaties; mag niet beginnen of eindigen met een schuine streep '/' en mag geen twee opeenvolgende schuine strepen bevatten. 

SEQUENCETYPE

Het type automatische incassotransactie

Opmerking: Indien niet opgegeven worden de transacties als “eenmalig” beschouwd en wordt de waarde 'OOFF' gebruikt. 

Mogelijke waarden om het type automatische incassotransactie aan te geven (AN, 4):
  • "FRST": Eerste inning van een reeks automatische incasso-opdrachten
  • "RCUR": Automatische incasso-opdrachten waarbij de toestemming van de debiteur wordt gebruikt voor regelmatige automatische incassotransacties die door de crediteur worden geïnitieerd
  • "FNAL": Laatste inning van een reeks automatische incasso-opdrachten (daarna kan dezelfde MandateID niet meer worden gebruikt)
  • "OOFF": Automatische incasso-opdracht waarbij de toestemming van de debiteur wordt gebruikt om één enkele automatische incassotransactie te starten
SIGNDATE

Datum waarop het mandaat door de koper werd ondertekend.

Opmerking: Indien niet opgegeven wordt de transactiedatum gebruikt.

JJJJMMDD

(*SEPA: Single Euro Payments Area - Gemeenschappelijke eurobetalingsruimte)

Opmerking: Deze velden kunnen worden teruggestuurd in het DirectLink XML-antwoord en moeten worden opgenomen in de SHA-IN-berekening (en optioneel SHA-OUT).

8.2 Betaalmethoden met alleen onderhoud via DirectLink

Voor sommige betaalmethoden (uitgezonderd creditcards) kunt u geen nieuwe transacties versturen via DirectLink, maar kunt u bepaalde onderhoudsbewerkingen versturen via DirectLink. Dat is het geval voor PostFinance Card, PostFinance E-finance, PayPal Express Checkout en TUNZ.

Bij het versturen van onderhoudsbewerkingen zijn de velden PM, BRAND, CARDNO en ED niet verplicht, zodat voor die betaalmethoden geen specifieke waarden moeten worden verstuurd.

Deze website maakt gebruik van cookies om u de beste gebruikerservaring te kunnen geven. Als u deze cookies niet wilt accepteren, laten wij u toe om de cookie-instellingen te wijzigen. Klik op 'Aanvaarden' om alle cookies van deze website toe te staan. 

Cookie settings

Introductie

Functioneel

Functionele cookies zijn nodig om de website correct te laten werken. Die cookies kunnen niet worden uitgeschakeld.

Geoptimaliseerd

Met optimalisatiecookies kunnen we het gebruik van de website analyseren, zodat we deze kunnen meten en verbeteren.
Dit is het standaard niveau.

Gepersonaliseerd

Personalisatiecookies worden gebruikt voor sociale media en geavanceerde personalisatie. Hiermee kunnen we u informatie laten zien die betrekking heeft op uw bedrijf.


Voorbeelden van ondersteunde functionaliteit

  • Landvoorkeur opslaan
  • Taalvoorkeur opslaan

Voorbeelden van niet-toegestane functionaliteit

  • Persoonlijke informatie over uw bezoek opslaan
  • Anonieme tracering via Google Analytics
  • Tracering voor marketingdoeleinden

Voorbeelden van ondersteunde functionaliteit

  • Landvoorkeur opslaan
  • Taalvoorkeur opslaan
  • Anonieme tracering via Google Analytics

Voorbeelden van niet-toegestane functionaliteit

  • Persoonlijke informatie over uw bezoek opslaan
  • Tracering voor marketingdoeleinden

Voorbeelden van ondersteunde functionaliteit

  • Landvoorkeur opslaan
  • Taalvoorkeur opslaan
  • Anonieme tracering via Google Analytics
  • Inhoud weergeven die aansluit op uw interesses
  • Advertenties weergeven die aansluiten op uw interesses
  • Tracering voor marketingdoeleinden

Voorbeelden van niet-toegestane functionaliteit

  • Persoonlijke gegevens opslaan