3. DirectDebit status

DirectDebits can have several status, below we will describe how you should handle them.

3.1 API reference

To retrieve the status of a mandate, we suggest (besides using the exchange calls as trigger) to use the DirectDebit:GET status API call: https://developer.pay.nl/reference/get_directdebits-directdebitid#/


3.2 Request

curl --request GET \
     --url https://rest.pay.nl/v2/directdebits/IL-2212-2978-7294 \
     --header 'accept: application/json' \
     --header 'authorization: Basic QVQtMDExMS03NzAxOmE0Yjg1ODc2ODBmMzQ0NzQ5NjczNmVjMzViMGJjNDhkODZkMjNlZWE

3.3 Response

{
  "id": "IL-####-####-####",
  "description": "gym membership 2025-01-01",
  "url": "http:\\/\\/pay.nl",
  "processDate": "2025-11-01T11:26:21+01:00",
  "orderId": "0000000000X00000",
  "paymentSessionId": "0000000000",
  "type": "FLEXIBLE",
  "amount": {
    "value": 4999,
    "currency": "EUR"
  },
  "status": {
    "code": 91,
    "action": "add",
    "phase": "Added"
  },
  "declined": false,
  "decline": {
    "code": 119,
    "name": "Administrative reason",
    "date": "2025-01-01T11:26:21+01:00"
  },
  "bankAccount": {
    "iban": "NL69INGB0123456789",
    "bic": "INGBNL2A",
    "owner": "John Doe"
  },
  "mandate": {
    "code": "IO-####-####-####",
    "description": "gym membership"
  },
  "service": {
    "code": "SL-####-####",
    "name": "Fictional Super Gym New York."
  },
  "merchant": {
    "code": "M-####-####",
    "name": "Fictional Super Gym.",
    "status": "ACTIVE",
    "incorporationCountry": "NL"
  },
  "stats": {
    "info": "string",
    "tool": "string",
    "object": "object1",
    "extra1": "string",
    "extra2": "string",
    "extra3": "string",
    "domainId": null
  },
  "createdAt": "2025-01-01T11:26:21+01:00",
  "createdBy": "AT-####-####",
  "modifiedAt": "2025-01-01T11:26:21+01:00",
  "modifiedBy": "AT-####-####",
  "deletedAt": null,
  "deletedBy": null,
  "_links": [
    {
      "href": "\\/directdebits\\/IL-####-####-####",
      "rel": "details",
      "type": "GET"
    },
    {
      "href": "\\/directdebits",
      "rel": "self",
      "type": "POST"
    }
  ]
}

3.4 Statuses

CodeStatusDescription
94ProcessedThe direct debit has been placed in a batch by PAY. and this has been presented to the bank
100DebitedThe amount was successfully debited
106DeclinedThe amount was not debited, see reasons for refund for the specification
91AddedThe direct debit order has been received by PAY. and will be processed shortly
526In BatchThe direct debit order has been placed in a batch
94Prematurely rejectedThe direct debit order was rejected by the PAY. system
103RemovedThe direct debit order has been removed
127Rejected by bankThe direct debit order was rejected by the bank

If the direct debit has the status 'Declined' (code 106), you can retrieve the reversal reason via decline.code The following reversal reasons apply:

3.5 Reversal reasons

CodeStatusPossible reasons
109Administrative reasonInsufficient funds; Regulatory non-compliance; Missing IBAN or debtor name; Other reasons
121Does not accept direct debitYour debtor has refused this specific direct debit.
274Account number blockedThe IBAN number from which you want to collect is not suitable for direct debit
277Selective direct debit blockThe IBAN from which you wish to collect the direct debit is blocked for (these) direct debits. The debtor or the debtor's bank may have blocked the account, or it's a saving account.
112Account number expiredThe IBAN from which you want to collect has been cancelled or the debtor is deceased.
115Account number unknownThe IBAN from which you wish to collect the direct debit is incorrect.
118Incorrect mandateThere is no correct registration of the mandate or the debtor has withdrawn the mandate or the debtor has specified a lower maximum amount than the amount of your direct debit.
124Direct debit carried out twiceYou have already submitted this direct debit.
271Name / number do not matchThe name of the debtor as submitted does not match the actual name of the account holder.
280Account number WKAThe IBAN number concerns a WKA account number from which direct debits may not be made.
286Reason not specifiedThe direct debit could not be processed but no specific reason was received from the debtor's bank
331Report incorrect direct debitThe debtor does not recognize the direct debit order and has started the Report incorrect direct debit procedure. (up to 13 months after depreciation)

❗️

Strong Recommendation: Only retry DirectDebits with Status Code 109

We strongly recommend retrying a DirectDebit only when the transaction returns reversal reason code 109. This is the only status that reliably indicates a temporary issue where a retry has a meaningful chance of succeeding.

DirectDebits with any other status code should not be retried, as these typically represent permanent failures (e.g., invalid IBAN, rejected mandate, regulatory issues). Retrying those transactions will not resolve the problem and may lead to unnecessary processing or compliance complications.