Requests

Requests


Pay

The Pay action is the default action. The action is used to perform a single payment with a credit card.

This action does not have service specific request variables. Advised is to use the basic parameter ClientIP so you have the option to block an IP-address if necessary in the future.

Base JSON request

Use the base request as instructed on this page

Pay request

Parameters

Service specific parameters

Parameter Type Required Recommended Description
ClientIP String No Yes The IP address of the client. I'ts recommended to send this in the request so it is possible to block a user based on their IP.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountDebit": 10.00,
  "Invoice": "testinvoice 123",
  "ClientIP": {
      "Type": 0,
      "Address": "0.0.0.0"
   },
  "Services": {
    "ServiceList": [
      {
        "Name": "mastercard",
        "Action": "Pay"
      }
    ]
  }
}

Pay reponse

If the request has a valid structure and a valid signature, a transaction will be created in the Payment Engine and a response will be returned. In this case, an additional action is required before the transaction can be completed. The customer needs to be redirected to the payment environment through the returned redirectURL.

Parameters

Basic parameters

Example response

{
    "Key": "13FAF43579D94F5FB8119A6819XXXXXX",
    "Status": {
        "Code": {
            "Code": 790,
            "Description": "Pending input"
        },
        "SubCode": null,
        "DateTime": "2017-03-28T11:41:10"
    },
    "RequiredAction": {
        "RedirectURL": "https://testcheckout.buckaroo.nl/html/redirect.ashx?r=AF51FAF1DECC422F936F06D565XXXXXX",
        "RequestedInformation": null,
        "PayRemainderDetails": null,
        "Name": "Redirect",
        "TypeDeprecated": 0
    },
    "Services": null,
    "CustomParameters": null,
    "AdditionalParameters": null,
    "RequestErrors": null,
    "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}

Pay push

If the request has a valid structure and a valid signature, a transaction will be created in the Payment Engine and a response will be returned. In this case, an additional action is required before the transaction can be completed. The customer needs to be redirected to the payment environment through the returned redirectURL.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
CarNumberEnding String N/A N/A Last 4 digits of the creditcard number.
Enrolled String N/A N/A The enrolled status.

|

Basic parameters

Example push

{
  "Transaction": {
    "Key": "13FAF43579D94F5FB8119A6819XXXXXX",
    "Invoice": "testinvoice 123",
    "ServiceCode": "mastercard",
    "Status": {
      "Code": {
        "Code": 190,
        "Description": "Success"
      },
      "SubCode": {
        "Code": "S001",
        "Description": "Transaction successfully processed"
      },
      "DateTime": "2017-03-28T11:42:41"
    },
    "IsTest": true,
    "Order": null,
    "Currency": "EUR",
    "AmountDebit": 10,
    "TransactionType": "V089",
    "Services": [
      {
        "Name": "mastercard",
        "Action": null,
        "Parameters": [
          {
            "Name": "CardNumberEnding",
            "Value": "0632"
          },
          {
            "Name": "CardExpirationDate",
            "Value": "2017-03"
          },
          {
            "Name": "MaskedCreditcardNumber",
            "Value": "513847******0632"
          },
          {
            "Name": "Enrolled",
            "Value": "Y"
          },
          {
            "Name": "Authentication",
            "Value": "Y"
          }
        ],
        "VersionAsProperty": 1
      }
    ],
    "CustomParameters": null,
    "AdditionalParameters": null,
    "MutationType": 2,
    "RelatedTransactions": null,
    "IsCancelable": false,
    "IssuingCountry": "FR",
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "T. Tester",
    "PayerHash": "974da7e5d169362946eae68e095bdf88e0dc5c8dd51c932ebf3f81ab9b35e699297c7582b9cd7cda3e63ba11cc116e73e46cf27e51df3ce195bfd402b271af22",
    "PaymentKey": "8F813B002FDA4DF1A0314E2CFAXXXXXX"
  }
}

PayEncrypted

For a regular Pay action, the consumer has to be redirected to our checkout to fill in its card data. With this action and our Client Side Encryption SDK we have introduced a way where this redirection is not necessary and you can ask for the consumers' card data on your own webshop. All you have to do is encrypt the card data with our Client Side Encryption SDK (for more info on our Client Side Encryption SDK, click here) and call this action with the "EncryptedCardData"-parameter. The value of this parameter is the result of the "encryptCardData"-function in our CSE SDK.

Base JSON request

Use the base request as instructed on this page

PayEncrypted request

For a regular Pay action, the consumer has to be redirected to our checkout to fill in its card data. With this action and our Client Side Encryption SDK we have introduced a way where this redirection is not necessary and you can ask for the consumers' card data on your own webshop. All you have to do is encrypt the card data with our Client Side Encryption SDK (for more info on our Client Side Encryption SDK, click here) and call this action with the "EncryptedCardData"-parameter. The value of this parameter is the result of the "encryptCardData"-function in our CSE SDK.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
EncryptedCardData String Yes N/A The value of this parameter is the result of the "encryptCardData"-function of our Client Side Encryption SDK.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountDebit": 0.01,
  "Invoice": "PayEncryptedTest123",
  "Description": "PayEncrypted Test 123",
  "Services": {
    "ServiceList": [
      {
        "Name": "Mastercard",
        "Action": "PayEncrypted",
        "Version": 0,
        "Parameters": [
          {
            "Name": "EncryptedCardData",
            "GroupType": "",
            "GroupID": "",
            "Value": "001u8gJNwngKubFCO6FmJod6aESlIFATkKYaj47KlgBp7f3NeVxUzChg1Aug7WD2vc5wut2KU9NPLUaO0tFmzhVLZoDWn7dX4AzGxSjPrsPmDMWYcEkIwMZfcyJqoRfFkF3j15mil3muXxhR1a609NfkTo11J3ENVsvU3k60z+x0jCw6NjzbrweVQhBRkrbs7TBJkS4tR38JiDsXyH2E1JmRHE+o2P9qz4at6w3zggmwImvjt5IIjEr6g8KfsIDXfv7YjEzhJ3P+7uuGoyG2WYm/Pr0+iEmTj5Q/ijkxu1+cDqv5eiB+80KgffPItUZDrnv9sKlVBAr+f53nm1G+Sxp0Q=="
          }
        ]
      }
    ]
  }
}

PayEncrypted response

The response is the same as the Pay response.

Parameters

Basic parameters

Example response

{
  "Key": "051911FB5C0742FD8F5C1B93CFXXXXXX",
  "Status": {
    "Code": {
      "Code": 791,
      "Description": "Pending processing"
    },
    "SubCode": {
      "Code": "S002",
      "Description": "An additional action is required: RedirectToConsumerBank"
    },
    "DateTime": "2018-10-19T10:54:47"
  },
  "RequiredAction": {
    "RedirectURL": "https://testcheckout.buckaroo.nl/html/redirect.ashx?r=5C927695D7EA4EBEB48CF34B65XXXXXX",
    "RequestedInformation": null,
    "PayRemainderDetails": null,
    "Name": "Redirect",
    "TypeDeprecated": 0
  },
  "Services": [
    {
      "Name": "mastercard",
      "Action": null,
      "Parameters": [
        {
          "Name": "CardNumberEnding",
          "Value": "0000"
        },
        {
          "Name": "CardExpirationDate",
          "Value": "2019-04"
        },
        {
          "Name": "MaskedCreditcardNumber",
          "Value": "538686******0000"
        },
        {
          "Name": "Enrolled",
          "Value": "Y"
        }
      ]
    }
  ],
  "CustomParameters": null,
  "AdditionalParameters": null,
  "RequestErrors": null,
  "Invoice": "PayEncryptedTest123",
  "ServiceCode": "mastercard",
  "IsTest": true,
  "Currency": "EUR",
  "AmountDebit": 0.01,
  "TransactionType": "C089",
  "MutationType": 1,
  "RelatedTransactions": null,
  "ConsumerMessage": null,
  "Order": null,
  "IssuingCountry": "FR",
  "StartRecurrent": false,
  "Recurring": false,
  "CustomerName": "Automated Encryptietest",
  "PayerHash": "974da7e5d169362946eae68e095bdf88e0dc5c8dd51c932ebf3f81ab9b35e699297c7582b9cd7cda3e63ba11cc116e73e46cf27e51df3ce195bfd402b271af22",
  "PaymentKey": "7B595AFEEA77431EA3F6D46E54XXXXXX"
}

PayEncrypted push

The push is almost the same as the Pay push, except for the ClientSideEncryptionVersion parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
ClientSideEncryptionVersion String Yes N/A The Client Side Encryption version that is used to encrypt the card data.
Basic parameters

Example push

{
   "Transaction":{
      "Key":"051911FB5C0742FD8F5C1B93CFXXXXXX",
      "Invoice":"PayEncryptedTest123",
      "ServiceCode":null,
      "Status":{
         "Code":{
            "Code":190,
            "Description":"Success"
         },
         "SubCode":{
            "Code":"S990",
            "Description":"The request was successful."
         },
         "DateTime":"2018-10-20T05:15:06"
      },
      "IsTest":true,
      "Order":null,
      "Currency":"EUR",
      "AmountDebit":0.01,
      "TransactionType":"C089",
      "Services":[
         {
            "Name":"Mastercard",
            "Action":null,
            "Parameters":[
               {
                  "Name":"ClientSideEncryptionVersion",
                  "Value":"1"
               }
            ]
         },
         {
            "Name":"mastercard",
            "Action":null,
            "Parameters":[
               {
                  "Name":"CardNumberEnding",
                  "Value":"0000"
               },
               {
                  "Name":"CardExpirationDate",
                  "Value":"2019-04"
               },
               {
                  "Name":"MaskedCreditcardNumber",
                  "Value":"538686******0000"
               },
               {
                  "Name":"Enrolled",
                  "Value":"Y"
               }
            ],
            "VersionAsProperty":1
         }
      ],
      "CustomParameters":null,
      "AdditionalParameters":null,
      "MutationType":1,
      "RelatedTransactions":null,
      "IsCancelable":false,
      "IssuingCountry":"FR",
      "StartRecurrent":false,
      "Recurring":false,
      "CustomerName":"Automated Encryptietest",
      "PayerHash":"974da7e5d169362946eae68e095bdf88e0dc5c8dd51c932ebf3f81ab9b35e699297c7582b9cd7cda3e63ba11cc116e73e46cf27e51df3ce195bfd402b271af22",
      "PaymentKey":"7B595AFEEA77431EA3F6D46E54XXXXXX"
   }
}

PayWithSecurityCode

When you want your returning customers not having to fill in al their card data again but still want to perform 3DS authentication, you can use this action. With this action and our Client Side Encryption SDK we have introduced a way where you only have to ask for the consumers' security code (CVC) on your webshop and send in the OriginalTransactionKey of the first transaction of this customer. All you have to do is encrypt the security code with our Client Side Encryption SDK (for more info on our Client Side Encryption SDK, click here) and call this action with the "EncryptedSecurityCode"-parameter. The value of this parameter is the result of the "encryptSecurityCode"-function in our CSE SDK.

Base JSON request

Use the base request as instructed on this page

Pay request

The request is much like the Pay request, except for the EncryptedSecurityCode parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
EncryptedSecurityCode String Yes Yes The value of this parameter is the result of the "encryptSecurityCode"-function of our Client Side Encryption SDK.
OriginalTransactionKey String Yes Transaction key of the initial transaction from where the card data should be copied. Please note: This is a basic parameter, not a service specific parameter.
Basic parameters

Example request

{   
  "Invoice": "PayWithSecurityCodeTest",
  "Description": "PayWithSecurityCodeTest",
  "Currency": "EUR",
  "AmountDebit": 0.01,
  "OriginalTransactionKey": "6C5DBB69E74644958F8C25199514DC6C",
  "Services": {
    "ServiceList": [
      {
        "Name": "mastercard",
        "Action": "PayWithSecurityCode",
		"Parameters": [
          {
            "Name": "EncryptedSecurityCode",
            "Value": "001F3AJT7wkJa04zE8c78P7spOAgHSKH1YKgPlOwXhW049VfIXMwZO32RYna9xZRyUCtfODIoCL8GRQoaZbStlBT4rbF5e4PPvWFSKdvua4rq+GQDNAghfa+ZQz0BzBPfjS0WBdFape9n3zH2vC/0m+wI3QZiDpYYgyWC1/Y3udJDU7JRTVMq/BDHGet+IZ2CDnkeGl813kkYymzYon/QeuQRQ0Wsec5bmVQNYGx62fz70/vLgs0ffff+6DtZtnZWfByRkTwMNebJotlOsSkbhVR5FrHpAbNPCJI+LvJcJL7Eoo+ZuX5/LWGmsT6qnR/uLiIw1DI7mTKGy6/P7IljAE+g=="
          }
        ]
      }
    ]
  }
}

PayWithSecurityCode response

The response is the same as the Pay response.

Parameters

Basic parameters

Example response

{
    "Key": "FFCB3927675A4AD7912A5447E98F5F26",
    "Status": {
        "Code": {
            "Code": 791,
            "Description": "Pending processing"
        },
        "SubCode": {
            "Code": "S002",
            "Description": "An additional action is required: TestStatusRedirect"
        },
        "DateTime": "2020-03-23T16:19:18"
    },
    "RequiredAction": {
        "RedirectURL": "https://testcheckout.buckaroo.nl/html/redirect.ashx?r=2EB891F035114226824BC56AFDB33B54",
        "RequestedInformation": null,
        "PayRemainderDetails": null,
        "Name": "Redirect",
        "TypeDeprecated": 0
    },
    "Services": [
        {
            "Name": "mastercard",
            "Action": null,
            "Parameters": [
                {
                    "Name": "CardNumberEnding",
                    "Value": "0000"
                },
                {
                    "Name": "CardExpirationDate",
                    "Value": "2023-01"
                },
                {
                    "Name": "MaskedCreditcardNumber",
                    "Value": "538686******0000"
                },
                {
                    "Name": "ThreeDsVersion",
                    "Value": "1.0.2"
                },
                {
                    "Name": "Enrolled",
                    "Value": "N"
                }
            ]
        }
    ],
    "CustomParameters": null,
    "AdditionalParameters": null,
    "RequestErrors": null,
    "Invoice": "PayWithSecurityCodeTest",
    "ServiceCode": "mastercard",
    "IsTest": true,
    "Currency": "EUR",
    "AmountDebit": 0.01,
    "TransactionType": "C876",
    "MutationType": 1,
    "RelatedTransactions": [
        {
            "RelationType": "copied_card_data",
            "RelatedTransactionKey": "6C5DBB69E74644958F8C25199514DC6C"
        }
    ],
    "ConsumerMessage": null,
    "Order": null,
    "IssuingCountry": "NL",
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "tes test",
    "PayerHash": "4dc3aefaa23fd5d23986186f0b4dc8d25549ac4957338054080928de4d1f76e14c7a1477571ffe1952bc9bb7b63f731930599ae93f0c0d544714b4023eecf8a0",
    "PaymentKey": "B2A282CE7C024F0F960EC54122840D12"
}

PayWithSecurityCode push

The push is almost the same as the Pay push, except for the ClientSideEncryptionVersion parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
ClientSideEncryptionVersion String N/A N/A The Client Side Encryption version that is used to encrypt the security code.
Basic parameters

Example push

{
    "Transaction":{
        "Key":"FFCB3927675A4AD7912A5447E98F5F26",
        "Invoice":"PayWithSecurityCodeTest",
        "ServiceCode":"mastercard",
        "Status":{
            "Code":{
                "Code":190,
                "Description":"Success"
            },
            "SubCode":{
                "Code":"S990",
                "Description":"The request was successful."
            },
            "DateTime":"2020-03-23T16:21:37"
        },
        "IsTest":true,
        "Order":null,
        "Currency":"EUR",
        "AmountDebit":0.01,
        "TransactionType":"C876",
        "Services":[
            {
                "Name":"Mastercard",
                "Action":null,
                "Parameters":[
                    {
                        "Name":"ClientSideEncryptionVersion",
                        "Value":"1"
                    }
                ]
            },
            {
                "Name":"mastercard",
                "Action":null,
                "Parameters":[
                    {
                        "Name":"CardNumberEnding",
                        "Value":"0000"
                    },
                    {
                        "Name":"CardExpirationDate",
                        "Value":"2023-01"
                    },
                    {
                        "Name":"MaskedCreditcardNumber",
                        "Value":"538686******0000"
                    },
                    {
                        "Name":"ThreeDsVersion",
                        "Value":"1.0.2"
                    },
                    {
                        "Name":"Enrolled",
                        "Value":"N"
                    },
                    {
                        "Name":"Authentication",
                        "Value":"Y"
                    }
                ],
                "VersionAsProperty":1
            }
        ],
        "CustomParameters":null,
        "AdditionalParameters":null,
        "MutationType":1,
        "RelatedTransactions":[
            {
                "RelationType":"copied_card_data",
                "RelatedTransactionKey":"6C5DBB69E74644958F8C25199514DC6C"
            }
        ],
        "IsCancelable":false,
        "IssuingCountry":"NL",
        "StartRecurrent":false,
        "Recurring":false,
        "CustomerName":"tes test",
        "PayerHash":"4dc3aefaa23fd5d23986186f0b4dc8d25549ac4957338054080928de4d1f76e14c7a1477571ffe1952bc9bb7b63f731930599ae93f0c0d544714b4023eecf8a0",
        "PaymentKey":"B2A282CE7C024F0F960EC54122840D12"
    }
}

Refund

Refund request

The Refund action can be used to perform a refund on an earlier credit card transaction. There is no customer interaction needed to do this.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
OriginalTransactionKey String Yes N/A Transaction key of the payment that needs to be refunded. Please note: This is a basic parameter, not a service specific parameter.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountCredit": 1.00,
  "Invoice": "testinvoice 123",
  "OriginalTransactionKey": "13FAF43579D94F5FB8119A6819XXXXXX",
  "Services": {
    "ServiceList": [
      {
        "Name": "mastercard",
        "Action": "Refund"
      }
    ]
  }
}

Refund response

Parameters

Basic parameters

Example response

{
    "Key": "7E1AD3268A4C49D496BEEFC300XXXXXX",
    "Status": {
        "Code": {
            "Code": 190,
            "Description": "Success"
        },
        "SubCode": {
            "Code": "S001",
            "Description": "Transaction successfully processed"
        },
        "DateTime": "2017-03-28T11:48:10"
    },
    "RequiredAction": null,
    "Services": null,
    "CustomParameters": null,
    "AdditionalParameters": null,
    "RequestErrors": null,
    "Invoice": "testinvoice 123",
    "ServiceCode": "mastercard",
    "IsTest": true,
    "Currency": "EUR",
    "AmountCredit": 1,
    "TransactionType": "V197",
    "MutationType": 2,
    "RelatedTransactions": [
        {
            "RelationType": "refund",
            "RelatedTransactionKey": "13FAF43579D94F5FB8119A6819XXXXXX"
        }
    ],
    "ConsumerMessage": null,
    "Order": null,
    "IssuingCountry": null,
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "T. Tester",
    "PayerHash": null,
    "PaymentKey": "A9025EE92CBC4CDD94F9C83F0FXXXXXX"
}

Refund push

Parameters

Basic parameters

Example push

{
  "Transaction": {
    "Key": "7E1AD3268A4C49D496BEEFC300XXXXXX",
    "Invoice": "testinvoice 123",
    "ServiceCode": "mastercard",
    "Status": {
      "Code": {
        "Code": 190,
        "Description": "Success"
      },
      "SubCode": {
        "Code": "S001",
        "Description": "Transaction successfully processed"
      },
      "DateTime": "2017-03-28T11:48:10"
    },
    "IsTest": true,
    "Order": null,
    "Currency": "EUR",
    "AmountCredit": 1,
    "TransactionType": "V197",
    "Services": null,
    "CustomParameters": null,
    "AdditionalParameters": null,
    "MutationType": 2,
    "RelatedTransactions": [
      {
        "RelationType": "refund",
        "RelatedTransactionKey": "13FAF43579D94F5FB8119A6819XXXXXX"
      }
    ],
    "IsCancelable": false,
    "IssuingCountry": null,
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "T. Tester",
    "PayerHash": null,
    "PaymentKey": "A9025EE92CBC4CDD94F9C83F0FXXXXXX"
  }
}

Authorize

Authorize request

The Authorize action allows a merchant to make a reservation for a specific amount on a customer’s creditcard. Referring to this authorization, it is then possible at a later time to perform 1 or more charges on the customers creditcard for a total of up to the requested amount. Since an authorize makes a reservation on a credit card, it lowers the available spending limit on a credit card. A recurrent payment is also possible on an authorize. In that case, add the basic parameter StartRecurrent with value "true" in your request.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
ClientIP String No Yes The IP address of the client. I'ts recommended to send this in the request so it is possible to block a user based on their IP.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountDebit": 10.00,
  "Invoice": "testinvoice 123",
   "ClientIP": {
      "Type": 0,
      "Address": "0.0.0.0"
   },
  "Services": {
    "ServiceList": [
      {
        "Name": "mastercard",
        "Action": "Authorize",
      }
    ]
  }
}

Authorize response

If the request has a valid structure and a valid signature, a transaction will be created in the Payment Engine and a response will be returned. In this case, an additional action is required before the transaction can be completed. The customer needs to be redirected to the payment environment through the returned redirectURL.

Parameters

Basic parameters

Example response

{
    "Key": "571457E371FB494FB0E67C99CFXXXXXX",
    "Status": {
        "Code": {
            "Code": 790,
            "Description": "Pending input"
        },
        "SubCode": null,
        "DateTime": "2017-03-28T11:50:19"
    },
    "RequiredAction": {
        "RedirectURL": "https://testcheckout.buckaroo.nl/html/redirect.ashx?r=B3B96BC48B2C464D9027742FA0XXXXXX",
        "RequestedInformation": null,
        "PayRemainderDetails": null,
        "Name": "Redirect",
        "TypeDeprecated": 0
    },
    "Services": null,
    "CustomParameters": null,
    "AdditionalParameters": null,
    "RequestErrors": null,
    "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

If the request has a valid structure and a valid signature, a transaction will be created in the Payment Engine and a response will be returned. In this case, an additional action is required before the transaction can be completed. The customer needs to be redirected to the payment environment through the returned redirectURL.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
CardNumberEnding String N/A N/A Last 4 digits of the credit card number.
Authentication String N/A N/A Authentication status
Enrolled String N/A N/A The enrolled status.
CardExpirationDate String N/A N/A Expiration date of the used credit card.
MaskedCreditcardNumber String N/A N/A The credit card number (partially masked).
Basic parameters

Example push

{
  "Transaction": {
    "Key": "571457E371FB494FB0E67C99CFXXXXXX",
    "Invoice": "testinvoice 123",
    "ServiceCode": "mastercard",
    "Status": {
      "Code": {
        "Code": 190,
        "Description": "Success"
      },
      "SubCode": null,
      "DateTime": "2017-03-28T11:51:15"
    },
    "IsTest": true,
    "Order": null,
    "Currency": "EUR",
    "AmountDebit": 10,
    "TransactionType": "V088",
    "Services": [
      {
        "Name": "mastercard",
        "Action": null,
        "Parameters": [
          {
            "Name": "CardNumberEnding",
            "Value": "9097"
          },
          {
            "Name": "CardExpirationDate",
            "Value": "2017-03"
          },
          {
            "Name": "MaskedCreditcardNumber",
            "Value": "517043******9097"
          },
          {
            "Name": "Enrolled",
            "Value": "Y"
          },
          {
            "Name": "Authentication",
            "Value": "Y"
          }
        ],
        "VersionAsProperty": 1
      }
    ],
    "CustomParameters": null,
    "AdditionalParameters": null,
    "MutationType": 3,
    "RelatedTransactions": null,
    "IsCancelable": true,
    "IssuingCountry": "DK",
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "T. Tester",
    "PayerHash": null,
    "PaymentKey": null
  }
}

AuthorizeEncrypted

For a regular Authorize action, the consumer has to be redirected to our checkout to fill in its card data. With this action and our Client Side Encryption SDK we have introduced a way where this redirection is not necessary and you can ask for the consumers' card data on your own webshop. All you have to do is encrypt the card data with our Client Side Encryption SDK (for more info on our Client Side Encryption SDK, click here) and call this action with the "EncryptedCardData"-parameter. The value of this parameter is the result of the "encryptCardData"-function in our CSE SDK.

Authorize request

The request is much like the Authorize request, except for the EncryptedCardData parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
EncryptedCardData String Yes N/A The value of this parameter is the result of the "encryptCardData"-function of our Client Side Encryption SDK.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountDebit": 0.01,
  "Invoice": "AuthorizeEncryptedTest123",
  "Description": "Authorize Encrypted Test 123",
  "Services": {
    "ServiceList": [
      {
        "Name": "Mastercard",
        "Action": "AuthorizeEncrypted",
        "Version": 0,
        "Parameters": [
          {
            "Name": "EncryptedCardData",
            "GroupType": "",
            "GroupID": "",
            "Value": "001u8gJNwngKubFCO6FmJod6aESlIFATkKYaj47KlgBp7f3NeVxUzChg1Aug7WD2vc5wut2KU9NPLUaO0tFmzhVLZoDWn7dX4AzGxSjPrsPmDMWYcEkIwMZfcyJqoRfFkF3j15mil3muXxhR1a609NfkTo11J3ENVsvU3k60z+x0jCw6NjzbrweVQhBRkrbs7TBJkS4tR38JiDsXyH2E1JmRHE+o2P9qz4at6w3zggmwImvjt5IIjEr6g8KfsIDXfv7YjEzhJ3P+7uuGoyG2WYm/Pr0+iEmTj5Q/ijkxu1+cDqv5eiB+80KgffPItUZDrnv9sKlVBAr+f53nm1G+Sxp0Q=="
          }
        ]
      }
    ]
  }
}

Authorize response

The request is much like the Authorize request, except for the EncryptedCardData parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
EncryptedCardData String Yes N/A The value of this parameter is the result of the "encryptCardData"-function of our Client Side Encryption SDK.
Basic parameters

Example response

{
  "Key": "18733464547E465EB78A1B896DXXXXXX",
  "Status": {
    "Code": {
      "Code": 791,
      "Description": "Pending processing"
    },
    "SubCode": null,
    "DateTime": "2018-10-19T10:54:47+02:00"
  },
  "RequiredAction": {
    "RedirectURL": "https://testcheckout.buckaroo.nl/html/redirect.ashx?r=EB19D99034424813B2F5C10C92XXXXXX",
    "RequestedInformation": null,
    "PayRemainderDetails": null,
    "Name": "Redirect",
    "TypeDeprecated": 0
  },
  "Services": [
    {
      "Name": "Mastercard",
      "Action": null,
      "Parameters": [
        {
          "Name": "ClientSideEncryptionVersion",
          "Value": "1"
        }
      ]
    },
    {
      "Name": "mastercard",
      "Action": null,
      "Parameters": [
        {
          "Name": "CardNumberEnding",
          "Value": "0000"
        },
        {
          "Name": "CardExpirationDate",
          "Value": "2019-04"
        },
        {
          "Name": "MaskedCreditcardNumber",
          "Value": "538686******0000"
        },
        {
          "Name": "Enrolled",
          "Value": "Y"
        }
      ]
    }
  ],
  "CustomParameters": null,
  "AdditionalParameters": null,
  "RequestErrors": null,
  "Invoice": "AuthorizeEncryptedTest123",
  "ServiceCode": "mastercard",
  "IsTest": true,
  "Currency": "EUR",
  "AmountDebit": 0.01,
  "TransactionType": "I088",
  "MutationType": 3,
  "RelatedTransactions": null,
  "ConsumerMessage": null,
  "Order": null,
  "IssuingCountry": "FR",
  "StartRecurrent": false,
  "Recurring": false,
  "CustomerName": "Automated Encryptietest",
  "PayerHash": null,
  "PaymentKey": null
}

Authorize push

The push is almost the same as the Authorize push, except for the ClientSideEncryptionVersion parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
ClientSideEncryptionVersion String Yes N/A The Client Side Encryption version that is used to encrypt the card data.
Basic parameters

Example push

{
   "Transaction":{
      "Key":"18733464547E465EB78A1B896DXXXXXX",
      "Invoice":"AuthorizeEncryptedTest123",
      "ServiceCode":"mastercard",
      "Status":{
         "Code":{
            "Code":791,
            "Description":"Pending processing"
         },
         "SubCode":null,
         "DateTime":"2018-10-19T10:54:47"
      },
      "IsTest":true,
      "Order":null,
      "Currency":"EUR",
      "AmountDebit":0.01,
      "TransactionType":"I088",
      "Services":[
         {
            "Name":"Mastercard",
            "Action":null,
            "Parameters":[
               {
                  "Name":"ClientSideEncryptionVersion",
                  "Value":"1"
               }
            ]
         },
         {
            "Name":"mastercard",
            "Action":null,
            "Parameters":[
               {
                  "Name":"CardNumberEnding",
                  "Value":"0000"
               },
               {
                  "Name":"CardExpirationDate",
                  "Value":"2019-04"
               },
               {
                  "Name":"MaskedCreditcardNumber",
                  "Value":"538686******0000"
               },
               {
                  "Name":"Enrolled",
                  "Value":"Y"
               }
            ],
            "VersionAsProperty":1
         }
      ],
      "CustomParameters":null,
      "AdditionalParameters":null,
      "MutationType":3,
      "RelatedTransactions":null,
      "IsCancelable":false,
      "IssuingCountry":"FR",
      "StartRecurrent":false,
      "Recurring":false,
      "CustomerName":"Automated Encryptietest",
      "PayerHash":null,
      "PaymentKey":null
   }
}

AuthorizeWithSecurityCode

When you want your returning customers not having to fill in al their card data again but still want to perform 3DS authentication, you can use this action. With this action and our Client Side Encryption SDK we have introduced a way where you only have to ask for the consumers' security code (CVC) on your webshop and send in the OriginalTransactionKey of the first transaction of this customer. All you have to do is encrypt the security code with our Client Side Encryption SDK (for more info on our Client Side Encryption SDK, click here) and call this action with the "EncryptedSecurityCode"-parameter. The value of this parameter is the result of the "encryptSecurityCode"-function in our CSE SDK.
### AuthorizeWithSecurityCode request
The request is much like the Authorize request, except for the OriginalTransactionKey and EncryptedSecurityCode parameters.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
EncryptedSecurityCode String Yes N/A The value of this parameter is the result of the "encryptSecurityCode"-function of our Client Side Encryption SDK.
OriginalTransactionKey String Yes N/A Transaction key of the initial transaction from where the card data should be copied. Please note: This is a basic parameter, not a service specific parameter.
Basic parameters

Example request

{   
  "Invoice": "AuthorizeWithSecurityCodeTest",
  "Description": "AuthorizeWithSecurityCodeTest",
  "Currency": "EUR",
  "AmountDebit": 0.01,
  "OriginalTransactionKey": "6C5DBB69E74644958F8C25199514DC6C",
  "Services": {
    "ServiceList": [
      {
        "Name": "mastercard",
        "Action": "AuthorizeWithSecurityCode",
		"Parameters": [
          {
            "Name": "EncryptedSecurityCode",
            "Value": "001F3AJT7wkJa04zE8c78P7spOAgHSKH1YKgPlOwXhW049VfIXMwZO32RYna9xZRyUCtfODIoCL8GRQoaZbStlBT4rbF5e4PPvWFSKdvua4rq+GQDNAghfa+ZQz0BzBPfjS0WBdFape9n3zH2vC/0m+wI3QZiDpYYgyWC1/Y3udJDU7JRTVMq/BDHGet+IZ2CDnkeGl813kkYymzYon/QeuQRQ0Wsec5bmVQNYGx62fz70/vLgs0ffff+6DtZtnZWfByRkTwMNebJotlOsSkbhVR5FrHpAbNPCJI+LvJcJL7Eoo+ZuX5/LWGmsT6qnR/uLiIw1DI7mTKGy6/P7IljAE+g=="
          }
        ]
      }
    ]
  }
}

AuthorizeWithSecurityCode response

The response is almost the same as the Authorize response, except for the ClientSideEncryptionVersion parameter.

Parameters

Basic parameters

Example response

{
    "Key": "D7B87BBA4C044B2F9A74B5DEC0AAEF6B",
    "Status": {
        "Code": {
            "Code": 791,
            "Description": "Pending processing"
        },
        "SubCode": null,
        "DateTime": "2020-03-23T16:24:38+01:00"
    },
    "RequiredAction": {
        "RedirectURL": "https://testcheckout.buckaroo.nl/html/redirect.ashx?r=11403BFFBEE648EBB37480F83683E9A5",
        "RequestedInformation": null,
        "PayRemainderDetails": null,
        "Name": "Redirect",
        "TypeDeprecated": 0
    },
    "Services": [
        {
            "Name": "Mastercard",
            "Action": null,
            "Parameters": [
                {
                    "Name": "ClientSideEncryptionVersion",
                    "Value": "1"
                }
            ]
        },
        {
            "Name": "mastercard",
            "Action": null,
            "Parameters": [
                {
                    "Name": "CardNumberEnding",
                    "Value": "0000"
                },
                {
                    "Name": "CardExpirationDate",
                    "Value": "2023-01"
                },
                {
                    "Name": "MaskedCreditcardNumber",
                    "Value": "538686******0000"
                },
                {
                    "Name": "ThreeDsVersion",
                    "Value": "1.0.2"
                },
                {
                    "Name": "Enrolled",
                    "Value": "N"
                }
            ]
        }
    ],
    "CustomParameters": null,
    "AdditionalParameters": null,
    "RequestErrors": null,
    "Invoice": "AuthorizeWithSecurityCodeTest",
    "ServiceCode": "mastercard",
    "IsTest": true,
    "Currency": "EUR",
    "AmountDebit": 0.01,
    "TransactionType": "I876",
    "MutationType": 3,
    "RelatedTransactions": [
        {
            "RelationType": "copied_card_data",
            "RelatedTransactionKey": "6C5DBB69E74644958F8C25199514DC6C"
        }
    ],
    "ConsumerMessage": null,
    "Order": null,
    "IssuingCountry": "NL",
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "tes test",
    "PayerHash": null,
    "PaymentKey": null
}

AuthorizeWithSecurityCode push

The push is almost the same as the Authorize push, except for the ClientSideEncryptionVersion parameter.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
ClientSideEncryptionVersion String N/A N/A The Client Side Encryption version that is used to encrypt the security code.
Basic parameters

Example push

{
    "Transaction":{
        "Key":"D7B87BBA4C044B2F9A74B5DEC0AAEF6B",
        "Invoice":"AuthorizeWithSecurityCodeTest",
        "ServiceCode":"mastercard",
        "Status":{
            "Code":{
                "Code":190,
                "Description":"Success"
            },
            "SubCode":null,
            "DateTime":"2020-03-23T16:24:56"
        },
        "IsTest":true,
        "Order":null,
        "Currency":"EUR",
        "AmountDebit":0.01,
        "TransactionType":"I876",
        "Services":[
            {
                "Name":"Mastercard",
                "Action":null,
                "Parameters":[
                    {
                        "Name":"ClientSideEncryptionVersion",
                        "Value":"1"
                    }
                ]
            },
            {
                "Name":"mastercard",
                "Action":null,
                "Parameters":[
                    {
                        "Name":"CardNumberEnding",
                        "Value":"0000"
                    },
                    {
                        "Name":"CardExpirationDate",
                        "Value":"2023-01"
                    },
                    {
                        "Name":"MaskedCreditcardNumber",
                        "Value":"538686******0000"
                    },
                    {
                        "Name":"ThreeDsVersion",
                        "Value":"1.0.2"
                    },
                    {
                        "Name":"Enrolled",
                        "Value":"N"
                    },
                    {
                        "Name":"Authentication",
                        "Value":"Y"
                    }
                ],
                "VersionAsProperty":1
            }
        ],
        "CustomParameters":null,
        "AdditionalParameters":null,
        "MutationType":3,
        "RelatedTransactions":[
            {
                "RelationType":"copied_card_data",
                "RelatedTransactionKey":"6C5DBB69E74644958F8C25199514DC6C"
            }
        ],
        "IsCancelable":false,
        "IssuingCountry":"NL",
        "StartRecurrent":false,
        "Recurring":false,
        "CustomerName":"tes test",
        "PayerHash":null,
        "PaymentKey":null
    }
}

CancelAuthorize

CancelAuthorize request

The CancelAuthorize action allows the merchant to cancel a previously created authorization

Parameters

Service specific parameters

Parameter Type Required Recommended Description
OriginalTransactionKey String Yes N/A Transaction key of the initial payment. Please note: This is a basic parameter, not a service specific parameter.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountCredit": 0.01,
  "Description": "Test  CancelAuthorize",
  "Invoice": "test_17112022",
  "OriginalTransactionKey": "C815ED5D33F54845B910179185F56E9D",
  "ClientIP": {
      "Type": 0,
      "Address": "0.0.0.0"
   },
  "Services": {
    "ServiceList": [
      {
        "Name": "Mastercard",
        "Action": "CancelAuthorize"
      }
    ]
  }
}

CancelAuthorize response

Parameters

Basic parameters

Example response

{
  "Key": "5145B51258604CFAA0726D12CAA7FA67",
  "Status": {
    "Code": {
      "Code": 190,
      "Description": "Success"
    },
    "SubCode": null,
    "DateTime": "2022-11-17T12:13:07"
  },
  "RequiredAction": null,
  "Services": null,
  "CustomParameters": null,
  "AdditionalParameters": null,
  "RequestErrors": null,
  "Invoice": "test_Mastercard_1668683508",
  "ServiceCode": "mastercard",
  "IsTest": true,
  "Currency": "EUR",
  "AmountCredit": 0.01,
  "TransactionType": "I877",
  "MutationType": 3,
  "RelatedTransactions": null,
  "ConsumerMessage": null,
  "Order": null,
  "IssuingCountry": null,
  "StartRecurrent": false,
  "Recurring": false,
  "CustomerName": null,
  "PayerHash": null,
  "PaymentKey": null
}

CancelAuthorize push

Parameters

Basic parameters

Example push

{
   "Transaction":{
      "Key":"5145B51258604CFAA0726D12CAA7FA67",
      "Invoice":"test_Mastercard_1668683508",
      "ServiceCode":"mastercard",
      "Status":{
         "Code":{
            "Code":190,
            "Description":"Success"
         },
         "SubCode":null,
         "DateTime":"2022-11-17T12:13:07"
      },
      "IsTest":true,
      "Order":null,
      "Currency":"EUR",
      "AmountCredit":0.01,
      "TransactionType":"I877",
      "Services":null,
      "CustomParameters":null,
      "AdditionalParameters":null,
      "MutationType":3,
      "RelatedTransactions":null,
      "IsCancelable":false,
      "IssuingCountry":null,
      "StartRecurrent":false,
      "Recurring":false,
      "CustomerName":null,
      "PayerHash":null,
      "PaymentKey":null,
      "Description":"Test CancelAuthorize"
   }
}

Capture

Capture request

The Capture action allows the merchant to perform a charge on a previously created authorization. The customer is not needed to perform this charge. The maximum capture amount is the amount of the previously requested Authorize.

Parameters

Service specific parameters

Parameter Type Required Recommended Description
OriginalTransactionKey String Yes N/A Transaction key of the initial payment. Please note: This is a basic parameter, not a service specific parameter.
Basic parameters

Example request

{
  "Currency": "EUR",
  "AmountDebit": 1.00,
  "Invoice": "testinvoice 123",
  "OriginalTransactionKey": "571457E371FB494FB0E67C99CFXXXXXX",
  "Services": {
    "ServiceList": [
      {
        "Name": "mastercard",
        "Action": "Capture"
      }
    ]
  }
}

Capture response

Parameters

Basic parameters

Example request

{
  "Key": "EA244C42EC0846E8BF2CD406BCXXXXXX",
  "Status": {
    "Code": {
      "Code": 190,
      "Description": "Success"
    },
    "SubCode": {
      "Code": "S001",
      "Description": "Transaction successfully processed"
    },
    "DateTime": "2017-05-31T12:40:03"
  },
  "RequiredAction": null,
  "Services": null,
  "CustomParameters": null,
  "AdditionalParameters": null,
  "RequestErrors": null,
  "Invoice": "testinvoice 123",
  "ServiceCode": "mastercard",
  "IsTest": true,
  "Currency": "EUR",
  "AmountDebit": 1.0,
  "TransactionType": "V201",
  "MutationType": 2,
  "RelatedTransactions": null,
  "ConsumerMessage": null,
  "Order": null,
  "IssuingCountry": "FR",
  "StartRecurrent": false,
  "Recurring": false,
  "CustomerName": "T. Tester",
  "PayerHash": null,
  "PaymentKey": "FBCCF988EE3A455A9A07F1F5A1XXXXXX"
}

Capture push

Parameters

Basic parameters

Example push

{
  "Transaction": {
    "Key": "EA244C42EC0846E8BF2CD406BCXXXXXX",
    "Invoice": "testinvoice 123",
    "ServiceCode": "mastercard",
    "Status": {
      "Code": {
        "Code": 190,
        "Description": "Success"
      },
      "SubCode": {
        "Code": "S001",
        "Description": "Transaction successfully processed"
      },
      "DateTime": "2017-05-31T12:40:03"
    },
    "IsTest": true,
    "Order": null,
    "Currency": "EUR",
    "AmountDebit": 1,
    "TransactionType": "V201",
    "Services": null,
    "CustomParameters": null,
    "AdditionalParameters": null,
    "MutationType": 2,
    "RelatedTransactions": null,
    "IsCancelable": false,
    "IssuingCountry": "FR",
    "StartRecurrent": false,
    "Recurring": false,
    "CustomerName": "T. Tester",
    "PayerHash": null,
    "PaymentKey": "FBCCF988EE3A455A9A07F1F5A1XXXXXX"
  }
}

Payrecurrent

The PayRecurrent action is used to perform a repeated payment by credit card on an initial payment. For a recurrent payment, the customer isn’t needed, since the credit card details do not have to be entered again. In case the payment is processed by Worldline, the recurrent payment is also possible on an authorize. A PayRecurrent payment can only be performed based on a transaction having the parameter Startrecurrent set to True.

Payrecurrent request

Parameters

Service specific parameters

Parameter Type Required Recommended Description
OriginalTransactionKey String Yes N/A Transaction key of the initial payment. Please note: This is a basic parameter, not a service specific parameter.
Basic parameters

Example request

{
   "Currency": "EUR",
   "AmountDebit": 10,
   "Invoice": "testinvoice 123",
   "OriginalTransactionKey": "80558FE1BE7F4B959E5C64907EXXXXXX",
   "Services": {
      "ServiceList": [
         {
            "Name": "mastercard",
            "Action": "PayRecurrent"
         }
      ]
   }
}

Payrecurrent response

Parameters

Service specific parameters

Parameter Type Required Recommended Description
CardNumberEnding String Yes N/A The last four digits of the used credit card number.
CardExpirationDate String N/A N/A The expiration date of the used credit card.
MaskedCreditcardNumber String N/A N/A The credit card number (partially masked).
Basic parameters

Example response

{
   "Key": "5C7012EEF3E84CAEAA50DBBCEDXXXXXX",
   "Status": {
      "Code": {
         "Code": 190,
         "Description": "Success"
      },
      "SubCode": {
         "Code": "S001",
         "Description": "Transaction successfully processed"
      },
      "DateTime": "2017-06-01T08:26:40"
   },
   "RequiredAction": null,
   "Services": [
      {
         "Name": "mastercard",
         "Action": null,
         "Parameters": [
            {
               "Name": "CardNumberEnding",
               "Value": "9097"
            },
            {
               "Name": "CardExpirationDate",
               "Value": "2020-06"
            },
            {
               "Name": "MaskedCreditcardNumber",
               "Value": "517043******9097"
            }
         ]
      }
   ],
   "CustomParameters": null,
   "AdditionalParameters": null,
   "RequestErrors": null,
   "Invoice": "testinvoice 123",
   "ServiceCode": "mastercard",
   "IsTest": true,
   "Currency": "EUR",
   "AmountDebit": 10,
   "TransactionType": "V043",
   "MutationType": 2,
   "RelatedTransactions": null,
   "ConsumerMessage": null,
   "Order": null,
   "IssuingCountry": "DK",
   "StartRecurrent": false,
   "Recurring": true,
   "CustomerName": "T. Tester",
   "PayerHash": null,
   "PaymentKey": "625B93474A34478698DEE551DFXXXXXX"
}

Payrecurrent push

Parameters

Service specific parameters

Parameter Type Required Recommended Description
CardNumberEnding String Yes N/A The last four digits of the used credit card number.
CardExpirationDate String N/A N/A The expiration date of the used credit card.
MaskedCreditcardNumber String N/A N/A The credit card number (partially masked).
Basic parameters

Example push

{
   "Transaction": {
      "Key": "5C7012EEF3E84CAEAA50DBBCEDXXXXXX",
      "Invoice": "testinvoice 123",
      "ServiceCode": "mastercard",
      "Status": {
         "Code": {
            "Code": 190,
            "Description": "Success"
         },
         "SubCode": {
            "Code": "S001",
            "Description": "Transaction successfully processed"
         },
         "DateTime": "2017-06-01T08:26:40"
      },
      "IsTest": true,
      "Order": null,
      "Currency": "EUR",
      "AmountDebit": 10,
      "TransactionType": "V043",
      "Services": [
         {
            "Name": "mastercard",
            "Action": null,
            "Parameters": [
               {
                  "Name": "CardNumberEnding",
                  "Value": "9097"
               },
               {
                  "Name": "CardExpirationDate",
                  "Value": "2020-06"
               },
               {
                  "Name": "MaskedCreditcardNumber",
                  "Value": "517043******9097"
               }
            ],
            "VersionAsProperty": 1
         }
      ],
      "CustomParameters": null,
      "AdditionalParameters": null,
      "MutationType": 2,
      "RelatedTransactions": null,
      "IsCancelable": false,
      "IssuingCountry": "DK",
      "StartRecurrent": false,
      "Recurring": true,
      "CustomerName": "T. Tester",
      "PayerHash": null,
      "PaymentKey": "625B93474A34478698DEE551DFXXXXXX"
   }
}

Was this article helpful?