Services

All requests require your API key in the X-API-Key header. Paths are relative to the environment endpoint.

ServiceMethodResource
Onboard new merchantPOST/services/apexrest/partnerapi/v2/merchant
Onboard additional merchant accountPOST/services/apexrest/partnerapi/v2/account
Upload onboarding documentPOST/services/apexrest/partnerapi/v2/merchant/<onboardingReference>/<fileType>/<fileReference>/document
Finalize onboardingPOST/services/apexrest/partnerapi/v2/merchant/<onboardingReference>/complete
Retrieve merchant keysGET/services/apexrest/partnerapi/v1/merchant/keys
Retrieve merchant statusGET/services/apexrest/partnerapi/v1/merchant/status
Retrieve configured payment methodsGET/services/apexrest/partnerapi/v1/paymentMethods

Onboard new merchant

Onboards a new merchant at Buckaroo with the relevant data.

MethodResource
POST/services/apexrest/partnerapi/v2/merchant

Request header

Content-Type: application/json
X-API-Key: <your key>

Request body

{
  "isTest": false,
  "partnerReference": "e5d957191987902cb1d80d5b43c528136d90c06c9c2f5556bbe341f2e6d41f5f",
  "webshopURL": "https://test.site",
  "secretKey": "optional64LongSelfDefinedKey",
  "paymentMethods": [
    "iDEAL"
  ],
  "deliveryStreet": "someStreet",
  "deliveryHouseNumber": "1",
  "deliveryPostalCode": "0000AA",
  "deliveryCity": "Traiectum",
  "deliveryISOCountryCode": "NL",
  "terminalProducts": [
    {
      "code": "N4",
      "acquisitionMethod": "L",
      "leaseTerm": 3,
      "quantity": 1,
      "storeName": "someName",
      "storeStreet": "someStreet",
      "storeHouseNumber": "1",
      "storePostalCode": "0000AA",
      "storeCity": "Traiectum",
      "storeISOCountryCode": "NL"
    },
    {
      "code": "N4",
      "acquisitionMethod": "B",
      "quantity": 1,
      "storeName": "someName",
      "storeStreet": "someStreet",
      "storeHouseNumber": "1",
      "storePostalCode": "0000AA",
      "storeCity": "Traiectum",
      "storeISOCountryCode": "NL"
    },
    {
      "code": "_A0577",
      "acquisitionMethod": "B",
      "quantity": 2
    }
  ],
  "company": {
    "name": "testName",
    "streetAndNumber": "teststreet 1",
    "postalCode": "1000 AA",
    "city": "Traiectum",
    "cocRegisteredCountryCode": "DE",
    "legalEntityTypeIsUnincorporatedAssociation": "false",
    "legalEntityType": "Aktiengesellschaft (AG)",
    "cocNumber": "04060983",
    "sbiCode": "13245",
    "vatNumber": "NL808888614.B01",
    "primaryIBAN": "NL02INGB8635612388",
    "primaryIBANAscription": "Buckaroo, Traiectum",
    "secondaryIBAN": "NL70RABO3135536696",
    "secondaryIBANAscription": "Buckaroo, Traiectum"
  },
  "contact": {
    "firstName": "test the",
    "lastName": "tester",
    "email": "[email protected]",
    "password": "Welkom123!",
    "phone": "+31713864315",
    "language": "nl_NL"
  },
  "legalPersons": [
    {
      "isDirector": true,
      "isSignatory": true,
      "isUBO": true,
      "firstName": "test the",
      "lastName": "tester",
      "jobTitle": "CEO",
      "streetAndNumber": "astreet 45",
      "postalCode": "0000 AA",
      "city": "Traiectum",
      "countryCode": "NL",
      "nationalityCountryCode": "NL",
      "dateOfBirth": "1980-07-01",
      "placeOfBirth": "Traiectum",
      "countryCodeOfBirth": "NL",
      "percentageOfShares": 60,
      "email": "[email protected]",
      "phone": "+31713864315",
      "verifiedByMerchant": true
    }
  ]
}

General fields

FieldDescriptionTypeRequiredNotes
partnerReferenceUnique ID of the partner.StringYesMax. 255 characters.
webshopURLURL of the company being onboarded.StringYesAlways include https://. Max. 255 characters.
secretKeySecret key for the Buckaroo payment API.StringNoMax. 64 characters.
paymentMethodsPayment methods the company wants to use.String arrayYes for online, no for POSSee payment method values.
deliveryStreetDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 255 characters.
deliveryHouseNumberDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 25 characters.
deliveryHouseNumberExtensionDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 25 characters.
deliveryAdditionalAddressLineDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 25 characters.
deliveryPostalCodeDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 25 characters.
deliveryCityDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 255 characters.
deliveryISOCountryCodeDelivery address for terminal products and accessories.StringYes, if a terminal product or accessory is includedMax. 3 characters.

Payment method values

The following values can be used in paymentMethods. The available list may differ per partnership.

  • iDEAL
  • iDEAL QR
  • Bancontact
  • Bancontact WIP
  • Bancontact WIP One-Click
  • Creditcards & Debitcards
  • Mastercard
  • Visa
  • Maestro
  • V PAY
  • Carte Bancaire
  • Carte Bleue
  • Dankort
  • Apple Pay
  • PayPal
  • Belfius
  • KBC payment button
  • Sofort
  • EPS
  • Giropay
  • Payconiq
  • Billink
  • Billink België
  • Billink Nederland
  • Riverty
  • Bank Transfer
  • Bank Overschrijvingen
  • Direct Debit (SEPA)
  • PayPerEmail
  • Credit Management
  • VVV Cadeaukaart
  • Payment Domain
  • Payout per transaction

Terminal product fields (optional)

FieldDescriptionTypeRequiredNotes
codeProduct code.StringYesPossible values are communicated separately. Max. 32 characters.
acquisitionMethodType of acquisition: buy or lease.StringYesB (buy) or L (lease).
leaseTermLength of the lease period.IntegerYes, if acquisitionMethod is Lnull, 1, 3 or 5.
quantityQuantity.IntegerYes
storeNameStore the terminal product and accessories are delivered to.StringYes, if a transaction service, terminal product or accessory is includedMax. 255 characters.
storeStreetStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 255 characters.
storeHouseNumberStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 25 characters.
storeHouseNumberExtensionStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 25 characters.
storeAdditionalAddressLineStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 25 characters.
storePostalCodeStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 25 characters.
storeCityStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 255 characters.
storeISOCountryCodeStore address.StringYes, if a transaction service, terminal product or accessory is includedMax. 3 characters.

Company fields

FieldDescriptionTypeRequiredNotes
nameName of the company being onboarded.StringYesMax. 255 characters.
streetAndNumberStreet and house number of the company address.StringYesMax. 255 characters.
postalCodePostal code of the company address.StringYesMax. 20 characters.
cityCity of the company address.StringYesMax. 40 characters.
cocRegisteredCountryCodeCountry where the company is registered with the Chamber of Commerce.StringYesISO 3166 country code. Max. 255 characters.
cocNumberChamber of Commerce number (or KBO number) of the company.StringYesMax. 255 characters.
legalEntityTypeLegal form of the company.StringYesAllowed values depend on cocRegisteredCountryCode. See legal entity types.
vatNumberVAT number of the company.StringNoMax. 255 characters.
sbiCodeSBI code describing the company's activities.StringNoMax. 5 characters.
primaryIBANIBAN of the company's primary bank account.StringYesMax. 255 characters.
secondaryIBANIBAN of the company's invoice bank account.StringNoMax. 34 characters.
secondaryIBANAscriptionAccount holder name of the secondary bank account.StringNoMax. 255 characters.

Legal entity types

Allowed values for legalEntityType, depending on cocRegisteredCountryCode:

  • Besloten vennootschap (B.V.)
  • Commanditaire vennootschap (C.V.)
  • Coöperatie
  • Eenmanszaak
  • Maatschap
  • Naamloze vennootschap (N.V.)
  • Stichting
  • Vennootschap onder Firma (V.O.F.)
  • Vereniging
  • Besloten vennootschap met beperkte aansprakelijkheid (BVBA)
  • Commanditaire vennootschap op aandelen (Comm. VA)
  • Coöperatieve vennootschap met onbeperkte en hoofdelijke aansprakelijkheid (CVOA)
  • Coöperatieve vennootschap met beperkte aansprakelijkheid (CVBA)
  • Economisch samenwerkingsverband (ESV)
  • Europese coöperatieve vennootschap (SCE)
  • Europese vennootschap (SE)
  • Europese economisch samenwerkingsverband (EESV)
  • Feitelijke vereniging
  • Landbouwvennootschap (L.V.)
  • Vereniging zonder winstoogmerk
  • Aktiengesellschaft (AG)
  • Eingetragene Genossenschaft (eG)
  • Eingetragener Verein (e.V.)
  • Europäische Wirtschaftliche Interessensvereinigung (EWIV)
  • Gemeinnützige Gesellschaft mit beschränkter Haftung (gGmbH)
  • Gesellschaft bürgerlichen Rechts (GbR)
  • Gesellschaft mit beschränkter Haftung (GmbH)
  • Kommanditgesellschaft auf Aktien (KGaA)
  • Kommanditgesellschaft (KG)
  • Nicht eingetragener Verein
  • Offene Handelsgesellschaft (OHG)
  • Partnerschaftsgesellschaft (PartGG)
  • Stiftung des privaten Rechts
  • Versicherungsverein auf Gegenseitigkeit
  • Einzelfirma
  • Unternehmergesellschaft mit beschränkter Haftung (UG)
  • Société à Responsabilité Limitée (SARL)
  • Entreprise Unipersonnelle à Responsabilité Limitée (EURL)
  • Société Anonyme (SA)
  • Société par Actions Simplifiées (SAS)
  • Société par Actions Simplifiées Unipersonnelle (SASU)
  • Société Civile Professionnelle (SCP)
  • Auto-entrepreneur (AE)
  • Entreprise Agricole à Responsabilité Limitée (EARL)
  • Entreprise Individuelle (EI)
  • Entreprise Individuelle à Responsabilité Limitée (EIRL)
  • Groupement Agricole d'Exploitation en Commun (GAEC)
  • Groupement Foncier Agricole (GFA)
  • Microentreprise
  • Société en Commandite par Actions (SCA)
  • Société Civile d'Exploitation Agricole (SCEA)
  • Société Civile Immobilière (SCI)
  • Société en Commandite Simple (SCS)
  • Société d'Exercice Libéral à Forme Anonyme (SELAFA)
  • Société d'Exercice Libéral à Responsabilité Limitée (SELARL)
  • Société d'Exercice Libéral par Actions Simplifiée (SELAS)
  • Other

Contact fields

FieldDescriptionTypeRequiredNotes
firstNameFirst name of the contact.StringYesMax. 40 characters.
lastNameLast name of the contact.StringYesMax. 80 characters.
emailEmail address where the contact receives the onboarding email.StringYesMax. 80 characters.
passwordPassword for the contact's first login to the onboarding portal.StringUsually not requiredMax. 255 characters.

Legal persons fields (optional)

"Required" applies when the legalPersons array is used.

FieldDescriptionTypeRequiredNotes
isDirectorWhether the person is a director.BooleanYestrue / false
isSignatoryWhether the person is a signatory.BooleanYestrue / false
isUBOWhether the person is an ultimate beneficial owner (UBO).BooleanYestrue / false
firstNameFirst name of the person.StringYesMax. 40 characters.
lastNameLast name of the person.StringYesMax. 80 characters.
jobTitleJob title of the person.StringNoMax. 255 characters.
streetAndNumberStreet and house number of the person's address.StringNoMax. 255 characters.
postalCodePostal code of the person's address.StringNoMax. 20 characters.
cityCity of the person's address.StringNoMax. 40 characters.
countryCodeCountry code of the person's address.StringNoMax. 3 characters.
nationalityCountryCodeCountry code of the person's nationality.StringNoMax. 3 characters.
dateOfBirthDate of birth of the person.DateYes
placeOfBirthPlace of birth of the person.StringNoMax. 255 characters.
countryCodeOfBirthCountry code of the person's place of birth.StringNoMax. 3 characters.
percentageOfSharesPercentage of shares the person holds.DecimalNo0 to 100.
emailEmail address of the person.StringNoMax. 80 characters.
phonePhone number of the person.StringNoMax. 40 characters.
verifiedByMerchantWhether the merchant has verified this information.BooleanYestrue / false

Response

The response contains an onboardingReference and, if documents are needed to complete the onboarding, a list of them. Upload each document to its endpoint with Upload onboarding document.

Example success response:

{
  "onboardingReference": "2ee5f5f5-c976-4c3c-a6a6-0204bd091ea1",
  "expectedDocumentsToCompleteOnboarding": [
    {
      "endpoint": "/services/apexrest/partnerapi/v2/merchant/2ee5f5f5-c976-4c3c-a6a6-0204bd091ea1/connectionAgreement/6bc85fe3-2622-4494-b3b3-1a8b6ffc8751/document?partnerReference=e5d957191987902cb1d80d5b43c528136d90c06c9c2f5556bbe341f2e6d41f5f",
      "documentType": "connectionAgreement",
      "documentDescription": "Signed connection agreement"
    },
    {
      "endpoint": "/services/apexrest/partnerapi/v2/merchant/2ee5f5f5-c976-4c3c-a6a6-0204bd091ea1/cocExtract/a8643542-9a1c-43d3-a7e7-e9ebbfc0590e/document?partnerReference=e5d957191987902cb1d80d5b43c528136d90c06c9c2f5556bbe341f2e6d41f5f",
      "documentType": "cocExtract",
      "documentDescription": "Extract chamber of commerce"
    },
    {
      "endpoint": "/services/apexrest/partnerapi/v2/merchant/2ee5f5f5-c976-4c3c-a6a6-0204bd091ea1/bankStatement/b2ad3ae1-5062-4b8b-b676-88b51570d093/document?partnerReference=e5d957191987902cb1d80d5b43c528136d90c06c9c2f5556bbe341f2e6d41f5f",
      "documentType": "bankStatement",
      "documentDescription": "Bank Statement for NL02INGB8635612388"
    },
    {
      "endpoint": "/services/apexrest/partnerapi/v2/merchant/2ee5f5f5-c976-4c3c-a6a6-0204bd091ea1/bankStatement/cf06e843-4574-4bff-9797-457e3b05d73e/document?partnerReference=e5d957191987902cb1d80d5b43c528136d90c06c9c2f5556bbe341f2e6d41f5f",
      "documentType": "bankStatement",
      "documentDescription": "Bank Statement for NL70RABO3135536696"
    },
    {
      "endpoint": "/services/apexrest/partnerapi/v2/merchant/2ee5f5f5-c976-4c3c-a6a6-0204bd091ea1/legalPerson/ad541b0c-da65-4beb-8787-4ca22a533613/document?partnerReference=e5d957191987902cb1d80d5b43c528136d90c06c9c2f5556bbe341f2e6d41f5f",
      "documentType": "legalPerson",
      "documentDescription": "Copy Identification for test the tester (.legalPersons[0])"
    }
  ]
}

Example error response:

{ "errors": [".paymentMethods: Product Bancontact does not exist"] }

Onboard additional merchant account

Onboards an additional merchant account for a merchant that has already been onboarded.

MethodResource
POST/services/apexrest/partnerapi/v2/account

Request header

Content-Type: application/json
X-API-Key: <your key>

Request body

Identical to Onboard new merchant, with these differences:

  • The request is validated against an existing merchant with the same cocNumber and cocRegisteredCountryCode.
  • legalPersons is optional.

Response

Identical to Onboard new merchant.

Upload onboarding document

Uploads a document required to complete the merchant onboarding. The full resource URL for each document is returned in expectedDocumentsToCompleteOnboarding by Onboard new merchant or Onboard additional merchant account.

MethodResource
POST/services/apexrest/partnerapi/v2/merchant/<onboardingReference>/<fileType>/<fileReference>/document?partnerReference=<partnerReference>

onboardingReference is the reference returned by Onboard new merchant or Onboard additional merchant account.

Request header

Content-Type: <content type of the file>
Content-Transfer-Encoding: base64
X-API-Key: <your key>

Supported content types

  • application/pdf
  • image/jpeg
  • image/gif
  • image/png
  • image/tiff
  • application/vnd.ms-powerpoint
  • application/vnd.openxmlformats-officedocument.presentationml.presentation
  • application/msword
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Request body

The file content, Base64-encoded.

Response

Example success response: HTTP status 200.

Example error response:

{ "errors": [".onboardingReference: Onboarding reference does not exist"] }

Finalize onboarding

Marks the onboarding as complete after all documents requested in the response of Onboard new merchant or Onboard additional merchant account have been uploaded.

MethodResource
POST/services/apexrest/partnerapi/v2/merchant/<onboardingReference>/complete?partnerReference=<partnerReference>

onboardingReference is the reference returned by Onboard new merchant or Onboard additional merchant account.

Request header

X-API-Key: <your key>

Request body

Empty.

Response

Example success response: HTTP status 200.

Example error response:

{ "errors": ["No documents were found related to onboarding"] }

Retrieve merchant keys

Retrieves the merchant's API keys.

MethodResource
GET/services/apexrest/partnerapi/v1/merchant/keys?onboardingReference=<onboardingReference>&partnerReference=<partnerReference>

Request header

X-API-Key: <your key>

Response

Example success response:

{
  "webSiteKey": "abcdef",
  "plazaUserName": "username",
  "plazaUserKey": "abc"
}

Example error response:

{ "errors": ["Keys not available, check onboarding status."] }

Retrieve merchant status

Retrieves the merchant's onboarding status.

MethodResource
GET/services/apexrest/partnerapi/v1/merchant/status?onboardingReference=<onboardingReference>&partnerReference=<partnerReference>

Request header

X-API-Key: <your key>

Response

Example success response:

{
  "status": "Waiting for Merchant",
  "readyForKYCInput": true,
  "keysRetrieved": false,
  "keysAvailable": true,
  "merchantGUID": "someKey"
}

Example error response:

{ "errors": [".partnerReference: Invalid partnerReference"] }

Retrieve configured payment methods

Retrieves the active payment methods for a merchant, including pricing.

MethodResource
GET/services/apexrest/partnerapi/v1/paymentMethods?partnerReference=<partnerReference>

Request header

X-API-Key: <your key>

Response

Example success response:

{
  "paymentMethods": [
    {
      "priceParts": [
        { "gatewayFee": 0.23, "description": "Debitcards Consumers (EU)", "currencyISOCode": "EUR", "commissionPercentage": 1.2 },
        { "gatewayFee": 0.23, "description": "Refund: Debitcards Consumers (EU)", "currencyISOCode": "EUR", "commissionPercentage": 1.2 },
        { "gatewayFee": 0.23, "description": "Creditcards Consumers (EU)", "currencyISOCode": "EUR", "commissionPercentage": 1.8 },
        { "gatewayFee": 0.23, "description": "Refund: Creditcards Consumers (EU)", "currencyISOCode": "EUR", "commissionPercentage": 1.8 },
        { "gatewayFee": 0.23, "description": "Business- + Non EU Cards", "currencyISOCode": "EUR", "commissionPercentage": 2.8 },
        { "gatewayFee": 0.23, "description": "Refund: Business- + Non EU Cards", "currencyISOCode": "EUR", "commissionPercentage": 2.8 }
      ],
      "name": "Creditcards and Debitcards",
      "label": "Creditcards and Debitcards"
    },
    {
      "priceParts": [],
      "name": "Sofort",
      "label": "Sofort"
    },
    {
      "priceParts": [
        { "gatewayFee": 0.26, "description": "iDEAL", "currencyISOCode": "EUR", "commissionPercentage": 0 }
      ],
      "name": "iDEAL",
      "label": "iDEAL"
    },
    {
      "priceParts": [
        { "gatewayFee": 0.37, "description": "Bancontact", "currencyISOCode": "EUR", "commissionPercentage": 0 }
      ],
      "name": "Bancontact",
      "label": "Bancontact"
    },
    {
      "priceParts": [
        { "gatewayFee": 0.1, "description": "PayPal", "currencyISOCode": "EUR", "commissionPercentage": 0 },
        { "gatewayFee": 0.23, "description": "Refunds (Processing)", "currencyISOCode": "EUR", "commissionPercentage": 0 }
      ],
      "name": "PayPal",
      "label": "PayPal"
    },
    {
      "priceParts": [
        { "gatewayFee": 0.23, "description": "Bank Transfer", "currencyISOCode": "EUR", "commissionPercentage": 0 }
      ],
      "name": "Bank Transfer",
      "label": "Bank Transfer"
    }
  ]
}

Example error response:

{ "errors": [".partnerReference: Invalid partnerReference"] }

Did this page help you?