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
Parameter
Type
Required
Description
customeraccountname
String
Yes
The name of the accountholder for the account on which the direct debit should be performed.
customerbic
String
No
The BIC code for the customer bank account on which the direct debit should be performed.
customeriban
String
Yes
The IBAN for the customer bank account on which the direct debit should be performed.
collectdate
String
No
The 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.
MandateReference
String
No
The 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).
MandateDate
String
No
The signing date of the mandate.
StartRecurrent
String
No
Set 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.
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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
Parameter
Type
Required
Description
customerBIC
String
No
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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.
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
Parameter
Type
Required
Description
OriginalTransactionKey
String
Yes
Transaction key of the original transaction that needs to be refunded.
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.
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
Parameter
Type
Required
Description
customeraccountname
String
Yes
The name of the accountholder for the account on which the direct debit should be performed.
customeriban
String
Yes
The IBAN for the customer bank account on which the direct debit will be performed.
customerbic
String
Yes
The BIC code for the customer bank account on which the direct debit will be performed.
MandateReference
String
Yes
The 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).
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.
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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.
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
Parameter
Type
Required
Description
CollectDate
String
No
The 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.
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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.
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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.
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
Parameter
Type
Required
Description
mandatereferenc
String
No
The 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).
mandatedate
String
No
The signing date of the mandate (dd-mm-yyyy).
customercode
String
No
The customer ID, giving a unique ID to the customer for the merchant.
customername
String
No
The name of the customer.
customerreferencepartycode
String
No
The customer reference party ID, giving a unique ID to the customer reference party for the merchant.
customerreferencepartyname
String
No
The name of the customer reference party. (The person on whose behalf the customer is making a payment)
street
String
No
The street name of the customer.
housenumber
String
No
The house number of the customer.
housenumbersuffix
String
No
The house number suffix of the customer.
zipcode
String
No
The zipcode of the customer.
city
String
No
The city of the customer.
country
String
No
The country of the customer.
contractID
String
No
The contract identifier for which the payment is being done.
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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
Parameter
Type
Required
Description
customerBIC
String
No
The BIC code for the customer bank account on which the direct debit will be performed.
customerIBAN
String
No
The IBAN for the customer bank account on which the direct debit will be performed.
mandatereference
String
No
The mandate reference used for the direct debit.
mandatedate
String
No
The signing date of the mandate that was used.
collectdate
String
No
The 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.
directdebittype
String
No
Returns 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.
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
Parameter
Type
Required
Description
MandateReference
String
Yes
This is the MandateID retrieved from a successful Emandate request.
Collectdate
String
No
The 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.
Startrecurrent
Boolean
Yes
This 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.
The BIC code for the customer bank account on which the direct debit will be performed.
CollectDate
String
N/A
N/A
The 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.
DirectDebitType
String
N/A
N/A
Returns 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
Parameter
Type
Required
Description
MandateReference
String
No
This is the MandateID from the Emandate.
MandateDate
Date
No
The signing date of the mandate that was used.
CustomerIBAN
String
No
The IBAN number of the customer bank account.
CustomerBIC
String
No
The BIC code for the customer bank account on which the direct debit will be performed.
CollectDate
String
No
The 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.
DirectDebitType
String
No
Returns 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.