Incasso API
Met deze HTTP API kunt u betalingen klaarzetten die geïncasseerd moeten worden via een SEPA incasso. Per betaling roept u de Start API aan met het bedrag dat geïncasseerd moet worden en van welke bankrekening.
U krijgt per incasso verzoek direct een eerste status terug op basis van een aantal controles, zoals op de bankrekening. De openstaande incasso opdrachten worden dagelijks aangeboden bij de bank. Op de opgegeven report URL ontvang je vervolgens updates over de status van de betaling. De akkoord bevestiging komt meestal binnen 7 dagen.
Voor meer informatie en voorwaarden neem contact op met sales@targetmedia.eu.
Gebruik hieronder het rekeningnummer en naam van de klant zoals deze door de check API van iDEAL wordt teruggegeven.
Start API Betaling starten
Voor het starten van de betaling roept u de Start API aan. Van de Start API krijgt u de betaallink om uw klant door te verwijzen en het transactienummer (voor in uw database).
Roep de volgende URL aan met GET
of POST
:
https://transaction.digiwallet.nl/directdebit/start
Met de volgende parameters (* = verplicht):
Variabele | Toelichting | Voorbeeld |
---|---|---|
ver* | API versie, dit is versie 2 | 2 |
rtlo* | Shop ID (ook wel subaccount of layoutcode) waarop de betaling geboekt moet worden | 93393 |
amount* | Bedrag in eurocenten: Minimaal 100 , Maximaal 100000 | 1000 |
description* | Omschrijving van de transactie: dit wordt op het bankafschrift van de klant vermeld. Gebruik alleen letters of cijfers, max. 32 tekens | Webshop order #1234 |
reporturl* |
Report URL: wordt aangeroepen na betaling (van server naar server) door middel van een POST .
Controleer hier of de betaling inderdaad is afgerond en verwerk de bestelling verder. Dit script wordt ook aangeroepen als de klant de browser per ongeluk zou sluiten.
Als parameters worden meegestuurd:
|
https://www.myshop.nl /reportOrder |
returnurl |
Report URL: Als u een e-mailadres opgegeven heeft, zal de return URL gemaild worden na betaling. Met de return URL wordt het transactie nummer als parameter meegestuurd. Parameter: trxid Voorbeeld: https://www.myshop.nl/thankYouPage?trxid=30626804185492 |
https://www.myshop.nl /thankYouPage |
once |
Of deze betaling eenmalig is of niet Dit toont de consument binnen hun online bankieromgeving dat de aankomende incasso eenmalig is en niet zal herhalen. Merk op dat een eenmalige betaling altijd een unieke mandate moet hebben. Deze parameter is optioneel, de standaardwaarde is: 0
|
1 of 0 |
E-mailadres van de klant. Indien ingevuld sturen we een bevestiging van de betaling per mail. | test@example.com | |
salt* | Salt: een willekeurige reeks getallen aan de hand waarvan de checksum berekend wordt die aan de report URL wordt meegegeven. Maximaal 32 tekens. | e381277 |
cbank* | IBAN van de klant, voor de incasso | NL20RABO02873663091 |
cname* | Naam van de klant. Maxmimumlengte is 35 karakters. | K Raaijmakers |
mandate* | Uniek identificatienummer voor de machtiging. Bijvoorbeeld het klantnummer van degene die u wilt incasseren | 29991 |
mandatestart* | De datum waarop de consument de incasso overeenkomst is aangegaan (JJJJ-MM-DD). Gebruik datum 2009-11-01 voor overeenkomsten die voor 1 februari 2014 zijn aangegaan | 2023-05-31 |
duedate |
Datum waarop de incasso moet plaatsvinden (JJJJ-MM-DD). U kunt een datum in de toekomst aangeven als u de betaling in de toekomst wil laten incasseren. Tot die tijd zal de transactie op status 'Open' blijven staan. Als het veld opengelaten wordt zal de datum van vandaag aangehouden worden. Als de verwerkingsdatum in het weekend of op een feestdag valt, zal de eerstvolgende werkdag de incasso aan de bank doorgegeven worden. |
2023-06-14 |
securitylevel* |
Hiermee kunt u aangeven hoe streng de aangeboden incasso's gecontroleerd moeten worden om te voorkomen dat betalingen dubbel klaargezet kunnen worden. We adviseren het niveau zo hoog mogelijk in te stellen. Voorbeeld 1: als u incasso gebruikt voor het 1x per maand afrekenen van abonnementsgeld, kies dan niveau 5 (zeer streng), omdat een rekeningnummer niet meerdere keren per dag voor kan komen. Voorbeeld 2: u verkoopt producten waarbij het wel denkbaar is dat op eenzelfde rekeningnummer meerdere betalingen tegelijk op een dag open kunnen staan. Kies dan een lager niveau. Een betaling mag niet geaccepteerd worden door DigiWallet, indien ...
|
5 |
userip | IP adres van de klant: is niet verplicht, maar is handig bij het vinden van problemen. | 213.76.8.33 |
test |
Bepaalt of het DigiWallet Test Paneel moet worden gebruikt. Wanneer geactiveerd zal de launch URL een link naar het Test Paneel worden, waar geen echt geld verrekend kan worden. Merk op dat als uw outlet in test-modus is gezet via het DigiWallet Dashboard, deze parameter automatisch op 1 komt te staan. Vergeet deze optie niet uit te zetten als de site live gaat. Standaard staat testmode uit. |
"1" of "0" |
U krijgt vervolgens een resultaat in de volgende vorm:
resultaatcode
OK
| transactienummer
Voorbeeld
000000 OK|651691489
Als de test-modus aan staat krijgt u aan het eind een link terug naar het DigiWallet Test Paneel:
resultaatcode
OK
| transactienummer
| test-panel-URL
Voorbeeld
000000 OK|651691489|https://pay.digiwallet.nl/test-transaction?transactionID=1057394782&paymethod=DRD&hash=341eabb42b1cca7c4045831fef0c7812e6cbdb0ca31d524b78163193bbd5b5ca
In dit geval zult u een redirect moeten uitvoeren naar het Test Paneel.
Mogelijke resultaatcodes:
Resultaatcode | Omschrijving |
---|---|
000000 | Betaling is klaargezet |
DW_XE_0003 Validation failed, details: JSON-encoded array
|
Één of meer velden konden niet gevalideerd worden. U kunt de JSON array decoderen voor een gedetailleerde analyse. |
DW_IE_0002 Maximum retries at acquirer bank exceeded for primary and fallback | Het acquirer systeem reageerde meermaals op rij niet, wat aangeeft dat er misschien een storing gaande is. |
DW_IE_0006 System is busy, please retry later | Interne systemen zijn overbelast en DigiWallet is hoogstwaarschijnlijk al bezig met het probleem op te lossen. |
DW_IE_0001 Unknown internal error | Onbekende interne foutmelding. Mail naar techsupport@targetmedia.eu voor ondersteuning. |
Check
API
Status van een betaling opvragen
Aan de hand van het transactienummer kunt u controleren of de betaling daadwerkelijk is gedaan. Na de betaling wordt de report URL onder water aangeroepen door de DigiWallet server. Hierbij wordt ook de betaalstatus vermeld, maar we adviseren om veiligheidsredenen altijd zelf de status nog op te vragen bij DigiWallet.
Roep de volgende URL aan met een GET
of POST
:
https://transaction.digiwallet.nl/directdebit/check
Met de volgende parameters (* = verplicht):
Variabele | Toelichting | Voorbeeld |
---|---|---|
rtlo* | Shop ID (layoutcode) | 93393 |
trxid* | transactienummer | 30626804185492 |
test |
Als u de transactie in test-modus hebt gestart, roep de Check API dan ook aan in test-modus. Als u dit niet doet zal uw transactie niet gevonden worden. Merk op dat als uw outlet in test-modus is gezet via het DigiWallet Dashboard, deze parameter automatisch op 1 komt te staan. Vergeet deze optie niet uit te zetten als de site live gaat. Standaard staat testmode uit. |
1 |
once* |
Als u 1 invult, dan zal slechts eenmaal een OK status teruggegeven worden. Als de bovenstaande URL nog een keer wordt aangeroepen voor dezelfde transactie, dan volgt een melding DW_SE_0028 Transaction already checked . Als u voor once '0' invult, dan zal steeds een 000000 OK status terug blijven komen. |
0 |
U ontvangt als antwoord:
Resultaatcode | Omschrijving |
---|---|
000001 Open | De betaling is nog niet aangeboden bij de bank |
000002 Processing | De betaling is aangeboden bij de bank, maar nog niet verwerkt |
000003 Chargeback | Het geld is gestorneerd door de consument |
000004 Rejected | De incasso is geweigerd bij de bank |
DW_XE_0003 Validation failed, details: JSON-encoded array
|
Één of meer velden konden niet gevalideerd worden. U kunt de JSON array decoderen voor een gedetailleerde analyse. |
DW_IE_0002 Maximum retries at acquirer bank exceeded for primary and fallback | Het acquirer systeem reageerde meermaals op rij niet, wat aangeeft dat er misschien een storing gaande is. |
DW_IE_0006 System is busy, please retry later | Interne systemen zijn overbelast en DigiWallet is hoogstwaarschijnlijk al bezig met het probleem op te lossen. |
DW_IE_0001 Unknown internal error | Onbekende interne foutmelding. Mail naar techsupport@targetmedia.eu voor ondersteuning. |