Pay

The pay action is used to register a direct debit and it will result in a pending transaction. After the direct debit has been processed by the bank, the transaction status is updated to success or failed. If this is the first direct debit of a series of recurrent direct debits, then also provide the basic gateway field StartRecurrent with its value set to true. To provide your own Mandate Reference and Mandate signing date, please use the supplementary action ExtraInfo. Otherwise, the transaction key and the transaction date are used for these.

Base JSON Request

Use the base request as instructed on this page

Pay Request Parameters

Service Specific Parameters

ParameterTypeRequiredDescription
customeraccountnameStringYesThe name of the accountholder for the account on which the direct debit should be performed.
customerbicStringNoThe BIC code for the customer bank account on which the direct debit should be performed.
customeribanStringYesThe IBAN for the customer bank account on which the direct debit should be performed.
collectdateStringNoThe date (dd-mm-yyyy) on which the direct debit should be collected from the consumer account. Important note: if combined with Credit Management, the collect date should always precede the due date of the invoice, since you don't want to trigger a reminder step before debiting the customer. If however, the collect date is accidentally set after the due date, then the first reminder step will be postponed till the collect date, but only if it's set within 14 days after the due date. If it's set further than that, then our system will perform another check after 14 days and so on.
MandateReferenceStringNoThe mandate reference for the SEPA Direct Debit. It is possible to provide your own unique reference, or use the mandateID from an Emandate, In any case, the MandateReference should always begin with a three digit prefix which can be found in the General Information on the Buckaroo Plaza (My Buckaroo > General).
MandateDateStringNoThe signing date of the mandate.
StartRecurrentStringNoSet this parameter to True if you wish to use this transaction as a reference for future recurring transactions. Recurring transactions can be performed with the PayRecurrent action. Note: this is a basic parameter, not a service parameter.

Example Request

{
   "Currency": "EUR",
   "StartRecurrent": "True",
   "AmountDebit": 10,
   "Invoice": "testinvoice 123",
   "Services": {
      "ServiceList": [
         {
            "Name": "SepaDirectDebit",
            "Action": "Pay,ExtraInfo",
            "Parameters": [
               {
                  "Name": "CollectDate",
                  "Value": "2019-08-01"
               },
               {
                  "Name": "customeraccountname",
                  "Value": "John Smith"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL13TEST0123456789"
               },
               {
                  "Name": "customerbic",
                  "Value": "TESTNL2A"
               },
               {
                  "Name": "MandateReference",
                  "Value": "02Qtestreference"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2019-07-03"
               }
            ]
         }
      ]
   }
}

 

Pay Response

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Response

{
   "Key": "FDA9EEEEA53C42BF875C35C6C2B7Exxx",
   "Status": {
      "Code": {
         "Code": 791,
         "Description": "Pending processing"
      },
      "SubCode": {
         "Code": "C620",
         "Description": "Awaiting transfer to bank."
      },
      "DateTime": "2019-07-03T13:55:30"
   },
   "RequiredAction": null,
   "Services": [
      {
         "Name": "SepaDirectDebit",
         "Action": null,
         "Parameters": [
            {
               "Name": "MandateReference",
               "Value": "02Qtestreference"
            },
            {
               "Name": "MandateDate",
               "Value": "2019-07-03"
            },
            {
               "Name": "CustomerIBAN",
               "Value": "NL13TEST0123456789"
            },
            {
               "Name": "CustomerBIC",
               "Value": "TESTNL2A"
            },
            {
               "Name": "CollectDate",
               "Value": "2019-08-01"
            },
            {
               "Name": "DirectDebitType",
               "Value": "Recurring"
            }
         ]
      }
   ],
   "CustomParameters": null,
   "AdditionalParameters": null,
   "RequestErrors": null,
   "Invoice": "testinvoice 123",
   "ServiceCode": "SepaDirectDebit",
   "IsTest": true,
   "Currency": "EUR",
   "AmountDebit": 10,
   "TransactionType": "C004",
   "MutationType": 1,
   "RelatedTransactions": null,
   "ConsumerMessage": {
      "MustRead": true,
      "CultureName": null,
      "Title": "Your SEPA Direct Debit has been scheduled.",
      "PlainText": "We have processed your request. The SEPA Direct Debit is scheduled to be collected from you bank account on Thursday, 01 August 2019. It will be done using the mandate reference 02Qtestreference.",
      "HtmlText": "We have processed your request. The SEPA Direct Debit is scheduled to be collected from you bank account on Thursday, 01 August 2019. It will be done using the mandate reference <b>02Qtestreference<\/b>."
   },
   "Order": null,
   "IssuingCountry": null,
   "StartRecurrent": true,
   "Recurring": false,
   "CustomerName": "John Smith",
   "PayerHash": null,
   "PaymentKey": "BBEAC81184744ED99082F5CD1561Fxxx"
}

Pay Push

The initial transaction status will be 'pending', which will be pushed first. When the amount has been debited from the consumer's bank account, a second push with the final (success) status will be performed.

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Push

{
   "Transaction": {
      "Key": "FDA9EEEEA53C42BF875C35C6C2B7Exxx",
      "Invoice": "testinvoice 123",
      "ServiceCode": "SepaDirectDebit",
      "Status": {
         "Code": {
            "Code": 190,
            "Description": "Success"
         },
         "SubCode": {
            "Code": "C000

",
            "Description": "Success"
         },
         "DateTime": "2019-07-03T13:57:37"
      },
      "IsTest": true,
      "Order": null,
      "Currency": "EUR",
      "AmountDebit": 10,
      "TransactionType": "C004",
      "Services": [
         {
            "Name": "SepaDirectDebit",
            "Action": null,
            "Parameters": [
               {
                  "Name": "MandateReference",
                  "Value": "02Qtestreference"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2019-07-03"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL13TEST0123456789"
               },
               {
                  "Name": "CustomerBIC",
                  "Value": "TESTNL2A"
               },
               {
                  "Name": "CollectDate",
                  "Value": "2019-08-01"
               },
               {
                  "Name": "DirectDebitType",
                  "Value": "Recurring"
               }
            ],
            "VersionAsProperty": 1
         }
      ],
      "CustomParameters": null,
      "AdditionalParameters": null,
      "MutationType": 1,
      "RelatedTransactions": null,
      "IsCancelable": false,
      "IssuingCountry": null,
      "StartRecurrent": true,
      "Recurring": false,
      "CustomerName": "John Smith",
      "PayerHash": null,
      "PaymentKey": "BBEAC81184744ED99082F5CD1561Fxxx"
   }
}

Refund

To refund a successful direct debit transaction, use the action Refund. A bank transfer is then initiated which transfers (some of) the amount of the original transaction to the consumer.

Refund Request

Service Specific Parameters

ParameterTypeRequiredDescription
OriginalTransactionKeyStringYesTransaction key of the original transaction that needs to be refunded.

Example Request

{
  "Currency": "EUR",
  "AmountCredit": 1.00,
  "Invoice": "testinvoice 123",
  "OriginalTransactionKey": "3D175524FCF94C94A23B67E8DCXXXXXX",
  "Services": {
    "ServiceList": [
      {
        "Name": "sepadirectdebit",
        "Action": "Refund"
      }
    ]
  }
}

Refund Response

This is a response example of a failed refund. The reason is because the channel 'WEB' is not supported on action Refund for service SepaDirectDebit. The solution is to change it to a supported channel.

Basic Parameters

Here you can find all basic parameters

Example Response

{
    "Key": "3997D8A96D9E480FBE8C81E813XXXXXX",
    "Status": {
        "Code": {
            "Code": 491,
            "Description": "Validation failure"
        },
        "SubCode": null,
        "DateTime": "2017-03-30T19:11:56"
    },
    "RequiredAction": null,
    "Services": null,
    "CustomParameters": null,
    "AdditionalParameters": null,
    "RequestErrors": {
        "ChannelErrors": [
            {
                "Service": "SepaDirectDebit",
                "Action": "Refund",
                "Name": "WEB",
                "Error": "ChannelUnsupported",
                "ErrorMessage": "Channel 'WEB' not supported on action Refund for service SepaDirectDebit."
            }
        ],
        "ServiceErrors": [],
        "ActionErrors": [],
        "ParameterErrors": [],
        "CustomParameterErrors": []
    },
    "Invoice": "testinvoice 123",
    "ServiceCode": null,
    "IsTest": true,
    "Currency": "EUR",
    "AmountCredit": 1,
    "TransactionType": null,
    "MutationType": 0,
    "RelatedTransactions": null,
    "ConsumerMessage": null,
    "Order": null,
    "IssuingCountry": null,
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": null,
    "PayerHash": null,
    "PaymentKey": null
}

Refund Push

This is a push example of a successful refund.

Service Specific Parameters

ParameterTypeRequiredDescription
customeraccountnameStringNoThe name of the accountholder for the account on which the direct debit should be performed.
CustomerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.

Example Push

{
  "Transaction": {
    "Key": "4CE60140C0104BF78A741216C6XXXXXX",
    "Invoice": "testinvoice 123",
    "ServiceCode": "SepaDirectDebit",
    "Status": {
      "Code": {
        "Code": 190,
        "Description": "Succes"
      },
      "SubCode": {
        "Code": "S001",
        "Description": "Transactie succesvol uitgevoerd"
      },
      "DateTime": "2017-03-30T16:24:23"
    },
    "IsTest": true,
    "Order": null,
    "Currency": "EUR",
    "AmountCredit": 10,
    "TransactionType": "C500",
    "Services": [
      {
        "Name": "SepaDirectDebit",
        "Action": null,
        "Parameters": [
          {
            "Name": "customeraccountname",
            "Value": "John Smith"
          },
          {
            "Name": "CustomerIBAN",
            "Value": "NL13TEST0123456789"
          }
        ],
        "VersionAsProperty": 1
      }
    ],
    "CustomParameters": null,
    "AdditionalParameters": null,
    "MutationType": 1,
    "RelatedTransactions": [
      {
        "RelationType": "refund",
        "RelatedTransactionKey": "3D175524FCF94C94A23B67E8DCXXXXXX"
      }
    ],
    "IsCancelable": false,
    "IssuingCountry": null,
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "John Smith",
    "PayerHash": null,
    "PaymentKey": "EC1076FE6870481EB8FFF45D34XXXXXX"
  }
}

Authorize

The Authorize action is used to import the data of a previously performed SEPA direct debit into the payment engine, so that new recurrent payments can be performed using the payment engine. Because it is used to enable recurrent payment, please remember to also provide the basic gateway field StartRecurrent with its value set to true.

Authorize Request

Service Specific Parameters

ParameterTypeRequiredDescription
customeraccountnameStringYesThe name of the accountholder for the account on which the direct debit should be performed.
customeribanStringYesThe IBAN for the customer bank account on which the direct debit will be performed.
customerbicStringYesThe BIC code for the customer bank account on which the direct debit will be performed.
MandateReferenceStringYesThe mandate reference for the SEPA Direct Debit. It is possible to provide your own unique reference, or use the mandateID from an Emandate. In any case, the MandateReference should always begin with a three-digit prefix which can be found in the General Information on the Buckaroo Plaza (My Buckaroo > General).
mandatedateStringYesThe signing date of the mandate (dd-mm-yyyy).

Example Request

{
   "Currency": "EUR",
   "AmountDebit": 10,
   "Invoice": "testinvoice 123",
   "Services": {
      "ServiceList": [
         {
            "Name": "SepaDirectDebit",
            "Action": "Authorize",
            "Parameters": [
               {
                  "Name": "customeraccountname",
                  "Value": "John Smith"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL13TEST0123456789"
               },
               {
                  "Name": "customerbic",
                  "Value": "TESTNL2A"
               },
               {
                  "Name": "MandateReference",
                  "Value": "02Qtestreference"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2017-01-01"
               }
            ]
         }
      ]
   }
}

Authorize Response

This is a response example of a failed authorization. The reason is because the channel 'WEB' is not supported on action Authorize for service SepaDirectDebit. The solution is to change it to a supported channel.

Example Response

{
   "Key": "034CF63421E640D0955C1020A8XXXXXX",
   "Status": {
      "Code": {
         "Code": 491,
         "Description": "Validation failure"
      },
      "

SubCode": null,
      "DateTime": "2017-06-01T10:12:27"
   },
   "RequiredAction": null,
   "Services": null,
   "CustomParameters": null,
   "AdditionalParameters": null,
   "RequestErrors": {
      "ChannelErrors": [
         {
            "Service": "SepaDirectDebit",
            "Action": "Authorize",
            "Name": "WEB",
            "Error": "ChannelUnsupported",
            "ErrorMessage": "Channel 'WEB' not supported on action Authorize for service SepaDirectDebit."
         }
      ],
      "ServiceErrors": [],
      "ActionErrors": [],
      "ParameterErrors": [],
      "CustomParameterErrors": []
   },
   "Invoice": "testinvoice 123",
   "ServiceCode": null,
   "IsTest": true,
   "Currency": "EUR",
   "AmountDebit": 10,
   "TransactionType": null,
   "MutationType": 0,
   "RelatedTransactions": null,
   "ConsumerMessage": null,
   "Order": null,
   "IssuingCountry": null,
   "StartRecurrent": false,
   "Recurring": false,
   "CustomerName": null,
   "PayerHash": null,
   "PaymentKey": null
}

Authorize Push

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Push

{
   "Transaction":{
      "Key":"D2E1E9B16FF348338A5DB3279AD43011",
      "Invoice":"Automatedtest_SEPADirectDebit_0002",
      "ServiceCode":"SepaDirectDebit",
      "Status":{
         "Code":{
            "Code":190,
            "Description":"Success"
         },
         "SubCode":null,
         "DateTime":"2023-05-30T13:53:19"
      },
      "IsTest":true,
      "Order":null,
      "Currency":"EUR",
      "AmountDebit":0.01,
      "TransactionType":"I004",
      "Services":[
         {
            "Name":"SepaDirectDebit",
            "Action":null,
            "Parameters":[
               {
                  "Name":"MandateDate",
                  "Value":"2019-06-01"
               },
               {
                  "Name":"MandateReference",
                  "Value":"02Q-Automatedtest_1685447599"
               },
               {
                  "Name":"CustomerIBAN",
                  "Value":"NL13TEST0123456789"
               },
               {
                  "Name":"CustomerBIC",
                  "Value":""
               }
            ],
            "VersionAsProperty":1
         }
      ],
      "CustomParameters":null,
      "AdditionalParameters":null,
      "MutationType":3,
      "RelatedTransactions":null,
      "IsCancelable":false,
      "IssuingCountry":null,
      "StartRecurrent":true,
      "Recurring":false,
      "CustomerName":"Testpersoon",
      "PayerHash":null,
      "PaymentKey":null,
      "Description":"Automated test SEPA Direct Debit Authorize"
   }
}

PayRecurrent

The PayRecurrent action is used to perform a recurrent direct debit payment. The action is used to register a direct debit and it will result in a pending transaction. After the direct debit has been processed by the bank, the transaction status is updated to success or failed. To be able to perform this transaction, an original transaction is needed, that was performed with the StartRecurrent set to true. This can be an iDEAL, SepaDirectDebit, Bancontact, Sofort, EPS, Giropay, Belfius and Payconiq transaction. You can provide its original transaction key with your SDD payrecurrent request, or you can use a mandate reference (if available) as an original transaction reference.

PayRecurrent Request

Service Specific Parameters

ParameterTypeRequiredDescription
CollectDateStringNoThe date (dd-mm-yyyy) on which the direct debit should be collected from the consumer account. Important note: if combined with Credit Management, the collect date should always precede the due date of the invoice, since you don't want to trigger a reminder step before debiting the customer. If however, the collect date is accidentally set after the due date, then the first reminder step will be postponed till the collect date, but only if it's set within 14 days after the due date. If it's set further than that, then our system will perform another check after 14 days and so on.

Example Request Based on TransactionKey

{
   "Currency": "EUR",
   "OriginalTransactionKey": "FDA9EEEEA53C42BF875C35C6C2B7xxxx",
   "AmountDebit": 10,
   "Invoice": "testinvoice 123",
   "Services": {
      "ServiceList": [
         {
            "Name": "SepaDirectDebit",
            "Action": "PayRecurrent",
            "Parameters": [
               {
                  "Name": "CollectDate",
                  "Value": "2019-08-01"
               }
            ]
         }
      ]
   }
}

Example Request Based on MandateReference

{
   "Currency": "EUR",
  "OriginalTransactionReference": {
        "Type": "MandateReference",
        "Reference": "02Q-Automatedtest_1685447599"
    },
   "AmountDebit": 10,
   "Invoice": "testinvoice 123",
   "Services": {
      "ServiceList": [
         {
            "Name": "SepaDirectDebit",
            "Action": "PayRecurrent",
            "Parameters": [
               {
                  "Name": "CollectDate",
                  "Value": "2019-08-01"
               }
            ]
         }
      ]
   }
}

PayRecurrent Response

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Response

{
   "Key": "150FE29DB67F48E7B15EDFFD75XXXXXX",
   "Status": {
      "Code": {
         "Code": 791,
         "Description": "Pending processing"
      },
      "SubCode": {
         "Code": "C620",
         "Description": "Awaiting transfer to bank."
      },
      "DateTime": "2017-06-01T10:34:35"
   },
   "RequiredAction": null,
   "Services": [
      {
         "Name": "SepaDirectDebit",
         "Action": null,
         "Parameters": [
            {
               "Name": "MandateReference",
               "Value": "02Q8402A480031D43B395EE78AE2B0F0F7E"
            },
            {
               "Name": "MandateDate",
               "Value": "2017-06-01"
            },
            {
               "Name": "CustomerIBAN",
               "Value": "NL13TEST0123456789"
            },
            {
               "Name": "CustomerBIC",
               "Value": ""
            },
            {
               "Name": "CollectDate",
               "Value": "2019-08-01"
            },
            {
               "Name": "DirectDebitType",
               "Value": "Recurring"


            }
         ]
      }
   ],
   "CustomParameters": null,
   "AdditionalParameters": null,
   "RequestErrors": null,
   "Invoice": "testinvoice 123",
   "ServiceCode": "SepaDirectDebit",
   "IsTest": true,
   "Currency": "EUR",
   "AmountDebit": 1,
   "TransactionType": "C005",
   "MutationType": 1,
   "RelatedTransactions": null,
   "ConsumerMessage": null,
   "Order": null,
   "IssuingCountry": null,
   "StartRecurrent": false,
   "Recurring": true,
   "CustomerName": "John Smith",
   "PayerHash": null,
   "PaymentKey": "1F3D4980A663449BA4F4328FAAXXXXXX"
}

PayRecurrent Push

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Push

{
   "Transaction": {
      "Key": "150FE29DB67F48E7B15EDFFD75XXXXXX",
      "Invoice": "testinvoice 123",
      "ServiceCode": "SepaDirectDebit",
      "Status": {
         "Code": {
            "Code": 190,
            "Description": "Succes"
         },
         "SubCode": {
            "Code": "C000",
            "Description": "Succes"
         },
         "DateTime": "2017-06-01T10:38:34"
      },
      "IsTest": true,
      "Order": null,
      "Currency": "EUR",
      "AmountDebit": 1,
      "TransactionType": "C005",
      "Services": [
         {
            "Name": "SepaDirectDebit",
            "Action": null,
            "Parameters": [
               {
                  "Name": "MandateReference",
                  "Value": "02Q8402A480031D43B395EE78AE2B0F0F7E"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2017-06-01"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL13TEST0123456789"
               },
               {
                  "Name": "CustomerBIC",
                  "Value": ""
               },
               {
                  "Name": "CollectDate",
                  "Value": "2017-06-06"
               },
               {
                  "Name": "DirectDebitType",
                  "Value": "Recurring"
               }
            ],
            "VersionAsProperty": 1
         }
      ],
      "CustomParameters": null,
      "AdditionalParameters": null,
      "MutationType": 1,
      "RelatedTransactions": null,
      "IsCancelable": false,
      "IssuingCountry": null,
      "StartRecurrent": false,
      "Recurring": true,
      "CustomerName": "John Smith",
      "PayerHash": null,
      "PaymentKey": "1F3D4980A663449BA4F4328FAAXXXXXX"
   }
}

ExtraInfo

The ExtraInfo action can be used to optionally provide the mandate information under which a direct debit should be executed. This action should only be provided on the Pay action, because it determines extra information for the Pay action. It is used to provide additional mandate information, that is then used for the direct debit, instead of having the service use defaults for this.

ExtraInfo Request

Service Specific Parameters

ParameterTypeRequiredDescription
mandatereferencStringNoThe mandate reference for SEPA Direct Debits. It is possible to provide your own unique reference, or use the mandateID from an Emandate. In any case, the MandateReference should always begin with a three-digit prefix which can be found in the General Information on the Buckaroo Plaza (My Buckaroo > General).
mandatedateStringNoThe signing date of the mandate (dd-mm-yyyy).
customercodeStringNoThe customer ID, giving a unique ID to the customer for the merchant.
customernameStringNoThe name of the customer.
customerreferencepartycodeStringNoThe customer reference party ID, giving a unique ID to the customer reference party for the merchant.
customerreferencepartynameStringNoThe name of the customer reference party. (The person on whose behalf the customer is making a payment)
streetStringNoThe street name of the customer.
housenumberStringNoThe house number of the customer.
housenumbersuffixStringNoThe house number suffix of the customer.
zipcodeStringNoThe zipcode of the customer.
cityStringNoThe city of the customer.
countryStringNoThe country of the customer.
contractIDStringNoThe contract identifier for which the payment is being done.

Example Request

{
   "Currency": "EUR",
   "AmountDebit": 10,
   "Invoice": "testinvoice 123",
   "Services": {
      "ServiceList": [
         {
            "Name": "SepaDirectDebit",
            "Action": "Pay,ExtraInfo",
            "Parameters": [
               {
                  "Name": "customeraccountname",
                  "Value": "John Smith"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL13TEST0123456789"
               },
               {
                  "Name": "customerbic",
                  "Value": "TESTNL2A"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2017-01-01"
               },
               {
                  "Name": "Country",
                  "Value": "NL"
               },
               {
                  "Name": "HouseNumberSuffix",
                  "Value": ""
               },
               {
                  "Name": "CustomerReferencePartyCode",
                  "Value": ""
               },
               {
                  "Name": "CustomerName",
                  "Value": "T.Tester"
               },
               {
                  "Name": "City",
                  "Value": "Heerenveen"
               },
               {
                  "Name": "CustomerCode",
                  "Value": ""
               },
               {
                  "Name": "HouseNumber",
                  "Value": "90"
               },
               {
                  "Name": "ContractID",
                  "Value": ""
               },
               {
                  "Name": "ZipCode",
                  "Value": "844ER"
               },
               {
                  "Name": "MandateReference",
                  "Value": "02Q3D175524FCF94C94A23B67E8DCE48E43"
               },
               {
                  "Name": "Street",
                  "Value": "Hoofdstraat"
               },
               {
                  "Name": "State",
                  "Value": ""
               },
               {
                  "Name": "CustomerReferencePartyName",
                  "Value": ""
               }
            ]
         }
      ]
   }
}

ExtraInfo Response

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Response

{
   "Key": "8A535904648F4A90A2A9A97824XXXXXX",
   "Status": {
      "Code": {
         "Code": 791,
         "Description": "Pending processing"
      },
      "SubCode": {
         "Code": "C620",
         "Description": "Awaiting transfer to bank."
      },
      "DateTime": "2017-06-01T11:41:08"
   },
   "RequiredAction": null,
   "Services": [
      {
         "Name": "SepaDirectDebit",
         "Action": null,
         "Parameters": [
            {
               "Name": "MandateReference",
               "Value": "02Q3D175524FCF94C94A23B67E8DCE48E43"
            },
            {
               "Name": "MandateDate",
               "Value": "2017-01-01"
            },
            {
               "Name": "CustomerIBAN",
               "Value": "NL13TEST0123456789"
            },
            {
               "Name": "CustomerBIC",
               "Value": ""
            },
            {
               "Name": "CollectDate",
               "Value": "2017-06-06"
            },
            {
               "Name": "DirectDebitType",
               "Value": "OneOff"
            }
         ]
      }
   ],
   "CustomParameters": null,
   "AdditionalParameters": null,
   "RequestErrors": null,
   "Invoice": "testinvoice 123",
   "ServiceCode": "SepaDirectDebit",
   "IsTest": true,
   "Currency": "EUR",
   "AmountDebit": 10,
   "TransactionType": "C004",
   "MutationType": 1,
   "RelatedTransactions": null,
   "ConsumerMessage": {
      "MustRead": true,
      "CultureName": null,
      "Title": "Your SEPA Direct Debit has been scheduled.",
      "PlainText": "We have processed your request. The SEPA Direct Debit is scheduled to be collected from you bank account on Tuesday, June 6, 2017. It will be done using the mandate reference 02Q3D175524FCF94C94A23B67E8DCE48E43.",
      "HtmlText": "We have processed your request. The SEPA Direct Debit is scheduled to be collected from you bank account on Tuesday, June 6, 2017. It will be done using the mandate reference <b>02Q3D175524FCF94C94A23B67E8DCE48E43<\/b>."
   },
   "Order": null,
   "IssuingCountry": null,
   "StartRecurrent": false,
   "Recurring": false,
   "CustomerName": "John Smith",
   "PayerHash": null,
   "PaymentKey": "6AC8A96E26BD4F7D8D200C53BEXXXXXX"
}

ExtraInfo Push

Service Specific Parameters

ParameterTypeRequiredDescription
customerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
customerIBANStringNoThe IBAN for the customer bank account on which the direct debit will be performed.
mandatereferenceStringNoThe mandate reference used for the direct debit.
mandatedateStringNoThe signing date of the mandate that was used.
collectdateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
directdebittypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Push

{
   "Transaction": {
      "Key": "8A535904648F4A90A2A9A97824XXXXXX",
      "Invoice": "testinvoice 123",
      "ServiceCode": "SepaDirectDebit",
      "Status": {
         "Code": {
            "Code": 190,
            "Description": "Succes"
         },
         "SubCode": {
            "Code": "C000",
            "Description": "Succes"
         },
         "DateTime": "2017-06-01T11:43:45"
      },
      "IsTest": true,
      "Order": null,
      "Currency": "EUR",
      "AmountDebit": 10,
      "TransactionType": "C004",
      "Services": [
         {
            "Name": "SepaDirectDebit",
            "Action": null,
            "Parameters": [
               {
                  "Name": "MandateReference",
                  "Value": "02Q3D175524FCF94C94A23B67E8DCE48E43"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2017-01-01"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL13TEST0123456789"
               },
               {
                  "Name": "CustomerBIC",
                  "Value": ""
               },
               {
                  "Name": "CollectDate",
                  "Value": "2017-06-06"
               },
               {
                  "Name": "DirectDebitType",
                  "Value": "OneOff"
               }
            ],
            "VersionAsProperty": 1
         }
      ],
      "CustomParameters": null,
      "AdditionalParameters": null,
      "MutationType": 1,
      "RelatedTransactions": null,
      "IsCancelable": false,
      "IssuingCountry": null,
      "StartRecurrent": false,
      "Recurring": false,
      "CustomerName": "John Smith",
      "PayerHash": null,
      "PaymentKey": "6AC8A96E26BD4F7D8D200C53BEXXXXXX"
   }
}

PayWithEmandate

Create a Sepadirectdebit using only the mandate reference of a valid Emandate. All bank information needed for the transaction will be retrieved from the Emandate.

PayWithEmandate Request

πŸ“˜

Important Note:

If you plan on using the transaction for recurring payments, then provide an Emandate mandate reference that's activated for recurring direct debits (please see the CreateMandate action in the Emandates section). Secondly, also provide the basic parameter Startrecurrent with value TRUE.

Service Specific Parameters

ParameterTypeRequiredDescription
MandateReferenceStringYesThis is the MandateID retrieved from a successful Emandate request.
CollectdateStringNoThe date (dd-mm-yyyy) on which the direct debit should be collected from the consumer account. Important note: if combined with Credit Management, the collect date should always precede the due date of the invoice, since you don't want to trigger a reminder step before debiting the customer. If however, the collect date is accidentally set after the due date, then the first reminder step will be postponed till the collect date, but only if it's set within 14 days after the due date. If it's set further than that, then our system will perform another check after 14 days and so on.
StartrecurrentBooleanYesThis is a basic parameter, not a service specific parameter. Required to be TRUE if the transaction should be able to be used as a reference for recurring payments. If not then the parameter can be left out or have value FALSE.

Example Request

{
   "Currency": "EUR",
   "AmountDebit": 10,
   "Invoice": "testfactuur123",
   "Services": {
      "ServiceList": [
         {
            "Name": "SepaDirectDebit",
            "Action": "PayWithEmandate",
            "Parameters": [
               {
                  "Name": "MandateReference",
                  "Value": "001D284C4A887F84756A1425A369997xxxx"
               }
            ]
         }
      ]
   }
}

PayWithEmandate Response

Service Specific Parameters

ParameterTypeRequiredRecommendedDescription
MandateReferenceStringN/AN/AThis is the MandateID from the Emandate.
MandateDateDateN/AN/AThe signing date of the mandate that was used.
CustomerIBANStringN/AN/AThe IBAN number of the customer bank account
CustomerBICStringN/AN/AThe BIC code for the customer bank account on which the direct debit will be performed.
CollectDateStringN/AN/AThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
DirectDebitTypeStringN/AN/AReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Response

{
   "Key": "A96C49E911D647019AD4FFAF2C65xxx",
   "Status": {
      "Code": {
         "Code": 791,
         "Description": "Pending processing"
      },
      "SubCode": {
         "Code": "C620",
         "Description": "Awaiting transfer to bank."
      },
      "DateTime": "2017-09-05T08:37:24"
   },
   "RequiredAction": null,
   "Services": [
      {
         "Name": "SepaDirectDebit",
         "Action": null,
         "Parameters": [
            {
               "Name": "MandateReference",
               "Value": "001D284C4A887F84756A1425A369997xxxx"
            },
            {
               "Name": "MandateDate",
               "Value": "2017-08-10"
            },
            {
               "Name": "CustomerIBAN",
               "Value": "NL44RABO012345xxxx"
            },
            {
               "Name": "CustomerBIC",
               "Value": "INGBNL2A"
            },
            {
               "Name": "CollectDate",
               "Value": "2017-09-08"
            },
            {
               "Name": "DirectDebitType",
               "Value": "OneOff"
            }
         ]
      }
   ],
   "CustomParameters": null,
   "AdditionalParameters": null,
   "RequestErrors": null,
   "Invoice": "testfactuur123",
   "ServiceCode": "SepaDirectDebit",
   "IsTest": true,
   "Currency": "EUR",
   "AmountDebit": 10,
   "TransactionType": "C004",
   "MutationType": 1,
   "RelatedTransactions": null,
   "ConsumerMessage": {
      "MustRead": true,
      "CultureName": null,
      "Title": "Your SEPA Direct Debit has been scheduled.",
      "PlainText": "We have processed your request. The SEPA Direct Debit is scheduled to be collected from you bank account on Friday, September 8, 2017. It will be done using the mandate reference 001D284C4A887F84756A1425A369997F732.",
      "HtmlText": "We have processed your request. The SEPA Direct Debit is scheduled to be collected from you bank account on Friday, September 8, 2017. It will be done using the mandate reference <b>001D284C4A887F84756A1425A369997xxxx<\/b>."
   },
   "Order": null,
   "IssuingCountry": null,
   "StartRecurrent": false,
   "Recurring": false,
   "CustomerName": "J. de Tèster",
   "PayerHash": null,
   "PaymentKey": "793DB44B0B1D4E0FB2E97862ABF2xxxx"
}

PayWithEmandate Push

Service Specific Parameters

ParameterTypeRequiredDescription
MandateReferenceStringNoThis is the MandateID from the Emandate.
MandateDateDateNoThe signing date of the mandate that was used.
CustomerIBANStringNoThe IBAN number of the customer bank account.
CustomerBICStringNoThe BIC code for the customer bank account on which the direct debit will be performed.
CollectDateStringNoThe expected date on which the direct debit will be collected from the consumer account. This can differ from the input field collectdate, due to a correction for the needed work days to process a direct debit.
DirectDebitTypeStringNoReturns the type of direct debit that is going to be performed. Possible values: OnOff: A single directdebit. First: The first of a recurrent sequence. Recurring: The next direct debit in a recurring sequence.

Example Push

{
   "Transaction": {
      "Key": "A96C49E911D647019AD4FFAF2C65xxxx",
      "Invoice": "testfactuur123",
      "ServiceCode": "SepaDirectDebit",
      "Status": {
         "Code": {
            "Code": 190,
            "Description": "Succes"
         },
         "SubCode": {
            "Code": "C000",
            "Description": "Succes"
         },
         "DateTime": "2017-09-05T08:41:05"
      },
      "IsTest": true,
      "Order": null,
      "Currency": "EUR",
      "AmountDebit": 10,
      "TransactionType": "C004",
      "Services": [
         {
            "Name": "SepaDirectDebit",
            "Action": null,
            "Parameters": [
               {
                  "Name": "MandateReference",
                  "Value": "001D284C4A887F84756A1425A369997xxxx"
               },
               {
                  "Name": "MandateDate",
                  "Value": "2017-08-10"
               },
               {
                  "Name": "CustomerIBAN",
                  "Value": "NL44RABO012345xxxx"
               },
               {
                  "Name": "CustomerBIC",
                  "Value": "INGBNL2A"
               },
               {
                  "Name": "CollectDate",
                  "Value": "2017-09-08"
               },
               {
                  "Name": "DirectDebitType",
                  "Value": "OneOff"
               }
            ],
            "VersionAsProperty": 1
         }
      ],
      "CustomParameters": null,
      "AdditionalParameters": null,
      "MutationType": 1,
      "RelatedTransactions": null,
      "IsCancelable": false,
      "IssuingCountry": null,
      "StartRecurrent": false,
      "Recurring": false,
      "CustomerName": "J. de Tèster",
      "PayerHash": null,
      "PaymentKey": "793DB44B0B1D4E0FB2E97862ABF2xxxx"
   }
}