Download OpenAPI specification:Download
This document describes the handling of the API and the basic concepts of sending payment requests and how to get updates when a buyer paid the payments.
The API is a JSON REST API which reports every information in real-time. There are no batch processes involved (an additional webhook will be released soon).
User A user can be invited, then register and use the service free of charge. All users are identified by their e-mail address.
Organizations To send a payment request an user has to create an organization, which holds the information about organization address, target iban, allowed payment methods. An organization can have multiple users with different roles.
Orders and Payments The payment request is called by order within the API. Every order belongs to an organization and a creator user. When a payer makes a payment, the order will be updated with the information regarding the payment status.
● DE16111111112222222222
● DE66111111113333333333
● DE19111111114444444444
● DE69111111115555555555
● DE22111111116666666666
● DE72111111117777777777
● DE25111111118888888888
● DE75111111119999999999
For the authentication with our system we provide a token which can be generated at [host]/clients.
Then the user receives a token which should be provided for each call as NX-Token header.
curl -X GET \
https://partnerapi.staging.bezahl.de/nxt/v1/user \
-H 'Content-Type: application/json' \
-H 'NX-Token: [token]'
Login into your account on your preferred environment. Switch to "Your Profile" and click on the button: "Token overview".
Here you can create an API-Token with your preferred expiration time and the description.
After creation you can copy the shown key in the http request header.
You create a new payment request (order).
POST [API]/order/plan
{
"orgId": "abcdef", // organization id
"order": {
"name": "Zahlung #123", // public name
"assets": [
{
"label": "Kaufpreis", // cost position name
"amount": 2000000 // cost position price
}
]
}
}
// response
{
"id": "BJ8ivGHSKq", // order reference
...
}
(Optional) You send the order via email.
POST [API]/order/:orderid/recipient
{
"recipient" : {
"email": "mail@example.com"
}
}
//response
{ ... }
Payer will receive the payment request via email (from bezahl.de if setup in step 2) or directly from the seller.
Payer will choose one of the payment methods and will start the payment process.
Every status update is requestable via API.
GET [API]/order/:orderid
//response
{
"status": "open",
...
}
If you have any questions, do not hesitate to contact us at dev@nx-technologies.com or our customer service at https://bezahl.de/contact.
Q: I get an error with no response or server error? A: Please check on your request if the url, method and data which you send is correct. For testing purpose use https://partnerapi.bezahl.de/ and for the live system https://api.bezahl.de/ as base url. If the problem persist feel free to contact us.
Q: I get some service error "missing orgId/name"? A: Please check the params if every required param is in the request body or in the request url.
Q: I get a validation error such as "please insert a valid email"? A: Please check the type of your params and if they contain the right data.
This can only be done by the logged in user.
orgId required | string ID of the organization the orders will be listed. |
bulk | string ID of the order. |
limit | number max limit of the request |
unique | string unique value that can be used as a custom identifier for the order. This needs to be activated in the orga settings. The behaviour (eg. throw error if 2 uniques are the same) can be adjusted there aswell. |
startat | number define the start of the request |
search | string search for ordername, contactperson and metafields |
status | string Enum: "open" "confirmed" filter by status |
filter | string Enum: "inclhidden" "onlyhidden" "hideclosed" "hidehidden" "over" "pickupWithoutPayment" "norecipient" "hasrecipient" possible filter words. usage: filter: "inclhidden,hasrecipient" |
period | string limit to period of time e.g. 01.01.2022,16.05.2022 |
contact | string filter by contactperson |
NX-Token required | string |
{- "total": 0,
- "list": [
- {
- "name": "string",
- "organization": "string",
- "fstatus": "open",
- "pickupdate": "2019-08-24",
- "paymentoptions": {
- "cash": true,
- "escrow": true,
- "sepa": true,
- "tink": true,
- "creditcard": true,
- "paypal": true,
- "rechnungskauf": true,
- "installment": true,
- "carFinancing": true
}, - "assets": [
- {
- "label": "string",
- "amount": 0
}
], - "attachments": [
- {
- "name": "string",
- "url": "string"
}
], - "recipient": [
- {
- "email": "string"
}
], - "hidden": true,
- "closed": true,
- "contactperson": {
- "id": "string",
- "fullname": "string",
- "email": "string"
}, - "accountData": {
- "figures": {
- "topaytotal": 0,
- "toconfirm": 0,
- "toreceive": 0,
- "isreceived": 0,
- "ispaid": 0,
- "topay": 0,
- "deficit": 0
}, - "paymentdata": {
- "iban": "string",
- "bic": "string",
- "name": "string",
- "reference": "string"
}
}, - "link": "string",
- "tags": [
- "string"
], - "metafields": [
- {
- "type": "string",
- "desc": "string"
}
], - "customer": {
- "id": "string",
- "type": "company",
- "company": "string",
- "firstname": "string",
- "lastname": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "city": "string",
- "country": "string",
- "email": "string",
- "phone": "string",
- "birthdate": "2019-08-24"
}, - "vehicle": {
- "vin": "string",
- "manufacturer": "string",
- "model": "string",
- "licenseplate": "string",
- "modelyear": 0,
- "condition": "string",
- "type": "string",
- "mileage": "string",
- "basiccolor": "string",
- "damage": "string",
- "registrationdate": "2019-08-24",
- "onofferfor": "string",
- "modelcode": "string",
- "optioncodes": "string",
- "manufacturerkeynumber": "string",
- "typekeynumber": "string",
- "performancekw": 0,
- "contractno": "string",
- "insurance": true,
- "paymenttype": "string",
- "currency": "string"
}, - "invoice": [
- {
- "desc": "string",
- "invoiceNo": "string",
- "orderNumber": "string",
- "debitor": "string",
- "name": "string",
- "amount": 0,
- "duedate": "2019-08-24",
- "invoice_date": "2019-08-24"
}
], - "location": "string"
}
]
}
This can only be done by the logged in user. Do not use the information in "paymentsInfo" for internal calculations, if you do, we cannot guarantee accurate results
id required | string ID of the single order. |
fieldnames | Array of strings if this is set you get only selected fields from the response. For example the name and amount; ?fieldnames=name&fieldnames=assets |
NX-Token required | string |
{- "name": "string",
- "lang": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "nick": "string",
- "picture": "string",
- "users": [
- {
- "name": "string",
- "surname": "string",
- "city": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "mobilenumber": "string"
}
], - "bankaccounts": [
- {
- "name": "string",
- "iban": "string",
- "bic": "string"
}
]
}, - "fstatus": "open",
- "pickupdate": "2019-08-24",
- "paymentoptions": {
- "cash": true,
- "escrow": true,
- "sepa": true,
- "tink": true,
- "creditcard": true,
- "paypal": true,
- "rechnungskauf": true,
- "installment": true,
- "carFinancing": true
}, - "assets": [
- {
- "label": "string",
- "amount": 0
}
], - "paymentsInfo": [
- {
- "id": "string",
- "label": "string",
- "amount": 0,
- "type": "string",
- "sender_data": {
- "name": "string",
- "sendername": "string",
- "iban": "string",
- "bic": "string"
}, - "status": "string",
- "received": true,
- "gwg": "string",
- "createDate": "2019-08-24",
- "receiveDate": "2019-08-24"
}
], - "attachments": [
- {
- "name": "string",
- "url": "string"
}
], - "recipient": [
- {
- "email": "string"
}
], - "creator": {
- "id": "string",
- "fullname": "string",
- "email": "string"
}, - "contactperson": {
- "id": "string",
- "fullname": "string",
- "email": "string"
}, - "accountData": {
- "figures": {
- "topaytotal": 0,
- "toconfirm": 0,
- "toreceive": 0,
- "isreceived": 0,
- "ispaid": 0,
- "topay": 0,
- "deficit": 0
}
}, - "paymentdata": {
- "iban": "string",
- "bic": "string",
- "name": "string",
- "reference": "string"
}, - "link": "string",
- "tags": [
- "string"
], - "metafields": [
- {
- "type": "string",
- "desc": "string"
}
], - "customer": {
- "id": "string",
- "type": "company",
- "company": "string",
- "firstname": "string",
- "lastname": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "city": "string",
- "country": "string",
- "fullname": "string",
- "email": "string",
- "phone": "string",
- "salutation": "string",
- "gender": "m",
- "title": "string",
- "mobile": "string",
- "fax": "string",
- "billingstreet": "string",
- "billingzip": "string",
- "billingcity": "string",
- "billingcountry": "string",
- "birthdate": "2019-08-24"
}, - "vehicle": {
- "vin": "string",
- "manufacturer": "string",
- "model": "string",
- "licenseplate": "string",
- "modelyear": 0,
- "condition": "string",
- "type": "string",
- "mileage": "string",
- "basiccolor": "string",
- "damage": "string",
- "registrationdate": "2019-08-24",
- "onofferfor": "string",
- "modelcode": "string",
- "optioncodes": "string",
- "manufacturerkeynumber": "string",
- "typekeynumber": "string",
- "performancekw": 0,
- "contractno": "string",
- "insurance": true,
- "paymenttype": "string",
- "currency": "string"
}, - "invoice": [
- {
- "desc": "string",
- "invoiceNo": "string",
- "orderNumber": "string",
- "debitor": "string",
- "name": "string",
- "amount": 0,
- "duedate": "2019-08-24",
- "invoice_date": "2019-08-24"
}
], - "header": {
- "url": "string",
- "description": "string"
}, - "location": {
- "_id": "string",
- "name": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "country": "string",
- "vendorid": "string",
- "commerceType": "service"
}
}
This can only be done by the logged in user.
id required | string ID of the single order |
link | boolean if this is set to true you get a download link for the offline pdf instead of the pdf itself |
NX-Token required | string |
{- "key": "order.update.name.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
NX-Token required | string |
orgId required | string ID of the organization the order will be assigned. |
required | object |
Array of objects |
{- "orgId": "string",
- "order": {
- "name": "string",
- "duedate": "2019-08-24",
- "pickupdate": "2019-08-24",
- "contactperson": "user@example.com",
- "watcher": "user@example.com",
- "lang": "string",
- "recipient": "user@example.com",
- "salutation": "string",
- "reminder": "disabled",
- "unique": "string",
- "uniquemodus": "error",
- "metafields": [
- {
- "type": "string",
- "desc": "string"
}
], - "customer": {
- "id": "string",
- "type": "company",
- "company": "string",
- "firstname": "string",
- "lastname": "string",
- "fullname": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "city": "string",
- "country": "string",
- "email": "string",
- "phone": "string",
- "birthdate": "2019-08-24",
- "salutation": "string",
- "gender": "m",
- "title": "string",
- "mobile": "string",
- "fax": "string",
- "billingstreet": "string",
- "billingzip": "string",
- "billingcity": "string",
- "billingcountry": "string"
}, - "vehicle": {
- "vin": "string",
- "manufacturer": "string",
- "model": "string",
- "licenseplate": "string",
- "modelyear": 0,
- "condition": "string",
- "type": "string",
- "mileage": "string",
- "basiccolor": "string",
- "damage": "string",
- "registrationdate": "2019-08-24",
- "onofferfor": "string",
- "modelcode": "string",
- "optioncodes": "string",
- "manufacturerkeynumber": "string",
- "typekeynumber": "string",
- "performancekw": 0,
- "contractno": "string",
- "insurance": true,
- "paymenttype": "string",
- "currency": "string"
}, - "invoice": [
- {
- "desc": "string",
- "invoiceNo": "string",
- "orderNumber": "string",
- "debitor": "string",
- "name": "string",
- "amount": 0,
- "duedate": "2019-08-24",
- "invoice_date": "2019-08-24"
}
], - "draft": false,
- "tags": [
- "string"
], - "location": "string",
- "binaryattachment": [
- {
- "originalFilename": "string",
- "mimetype": "string",
- "buffer": "string"
}
]
}, - "assets": [
- {
- "label": "string",
- "amount": 0
}
]
}
{- "id": "string",
- "_meta": {
- "key": "order.plan.add.success",
- "message": "Erfolgreich gespeichert"
}
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
attachment | string <binary> File size has to be less than 3mb; body should be a form-data object which contains the file with the key 'attachment' |
{- "key": "order.attachment.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
url | string |
item | string |
{- "url": "string",
- "item": "string"
}
{- "key": "order.attachment.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
object |
{- "recipient": {
- "email": "string",
- "salutation": "string"
}
}
{- "key": "order.recipient.add.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
string Email address of the buyer (recipient). |
{- "email": "string"
}
{- "key": "order.recipient.delete.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
required | Array of objects |
{- "assets": [
- {
- "label": "string",
- "amount": 0
}
]
}
{- "key": "order.update.price.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
name required | string |
{- "name": "string"
}
{- "key": "order.update.name.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
contactperson required | string |
{- "contactperson": "contactperson@email.com"
}
{- "key": "order.update.name.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
watcher required | string |
orgId required | string |
{- "watcher": "watcher@email.com",
- "orgId": "string"
}
{- "key": "order.update.name.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
duedate required | string <date> |
{- "duedate": "2019-08-24"
}
{- "key": "order.duedate.add.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
pickupdate | string <date> |
{- "pickupdate": "2019-08-24"
}
{- "key": "order.update.pickupdate.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
{- "key": "order.delete.pickupdate.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
required | Array of objects |
override | boolean Default: false override existing fields with new data |
{- "metafields": [
- {
- "type": "string",
- "desc": "string"
}
], - "override": false
}
{- "key": "order.update.metafields.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
Array of objects |
{- "invoice": [
- {
- "desc": "string",
- "invoiceNo": "string",
- "orderNumber": "string",
- "debitor": "string",
- "name": "string",
- "amount": 0,
- "duedate": "2019-08-24",
- "invoice_date": "2019-08-24"
}
]
}
{- "key": "order.update.invoicefields.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
object |
{- "customer": {
- "id": "string",
- "type": "company",
- "company": "string",
- "firstname": "string",
- "lastname": "string",
- "fullname": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "city": "string",
- "country": "string",
- "email": "string",
- "phone": "string",
- "salutation": "string",
- "gender": "m",
- "title": "string",
- "mobile": "string",
- "fax": "string",
- "billingstreet": "string",
- "billingzip": "string",
- "billingcity": "string",
- "billingcountry": "string",
- "birthdate": "2019-08-24"
}
}
{- "key": "order.update.customerfields.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
object |
{- "vehicle": {
- "vin": "string",
- "manufacturer": "string",
- "model": "string",
- "modelyear": 0,
- "condition": "string",
- "type": "string",
- "mileage": "string",
- "basiccolor": "string",
- "damage": "string",
- "registrationdate": "2019-08-24",
- "onofferfor": "string",
- "modelcode": "string",
- "optioncodes": "string",
- "manufacturerkeynumber": "string",
- "typekeynumber": "string",
- "contractno": "string",
- "insurance": true,
- "paymenttype": "string",
- "currency": "string",
- "accidentloaddate": "2019-08-24",
- "accidentloadamount": 0,
- "licenseplate": "string",
- "commissionnumber": "string",
- "performancekw": 0
}
}
{- "key": "order.update.vehiclefields.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
closed | boolean |
{- "closed": true
}
{- "key": "order.hide.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
label | string |
{- "label": "string"
}
{- "key": "order.tag.create.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
id required | string ID of the single order |
NX-Token required | string |
tid | string |
{- "tid": "string"
}
{- "key": "order.tag.delete.success",
- "message": "Erfolgreich gespeichert"
}
This can only be done by the logged in user.
NX-Token required | string |
{- "total": 0,
- "list": [
- {
- "id": "string",
- "key": "string",
- "name": "string",
- "nick": "string",
- "picture": "string",
- "contact": {
- "city": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "email": "string"
}, - "users": [
- {
- "id": 0,
- "contactData": {
- "name": "string",
- "surname": "string",
- "city": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "mobilenumber": "string"
}
}
], - "bankaccounts": [
- {
- "name": "string",
- "iban": "string",
- "bic": "string"
}
], - "paymentoptions": {
- "cash": true,
- "escrow": true,
- "sepa": true,
- "tink": true,
- "creditcard": true,
- "paypal": true,
- "rechnungskauf": true,
- "installment": true,
- "carFinancing": true
}, - "tags": [
- {
- "label": "string",
- "color": "string"
}
], - "location": [
- {
- "_id": "string",
- "name": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "country": "string",
- "vendorid": "string",
- "commerceType": "service"
}
]
}
]
}
This can only be done by the logged in user.
orgId required | string ID of the organization. |
NX-Token required | string |
{- "id": "string",
- "key": "string",
- "name": "string",
- "nick": "string",
- "picture": "string",
- "contact": {
- "city": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "email": "string"
}, - "users": [
- {
- "id": 0,
- "contactData": {
- "name": "string",
- "surname": "string",
- "city": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "mobilenumber": "string"
}
}
], - "bankaccounts": [
- {
- "name": "string",
- "iban": "string",
- "bic": "string"
}
], - "paymentoptions": {
- "cash": true,
- "escrow": true,
- "sepa": true,
- "tink": true,
- "creditcard": true,
- "paypal": true,
- "rechnungskauf": true,
- "installment": true,
- "carFinancing": true
}, - "tags": [
- {
- "label": "string",
- "color": "string"
}
], - "location": [
- {
- "_id": "string",
- "name": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "country": "string",
- "vendorid": "string",
- "commerceType": "service"
}
]
}
This can only be done by the logged in user.
orgId required | string ID of the organization. |
since required | string <date> Example: since=2022-04-01T00:00:00.000Z Date as UTC timestamp. |
NX-Token required | string |
[- "string"
]
This can only be done by the logged in user.
NX-Token required | string |
name required | string Name of the organization. In most cases, the full company name. Also shown to buyer. |
nick | string Displayed organization name to differentiate, for example, between different locations or branch offices. |
object Contact details of the organization. | |
object |
{- "name": "string",
- "nick": "string",
- "contact": {
- "email": "string",
- "street": "string",
- "streetnumber": "string",
- "zip": "string",
- "city": "string"
}, - "paymentoptions": {
- "cash": true,
- "sepa": true,
- "tink": true,
- "creditcard": true,
- "paypal": true
}
}
{- "id": "string",
- "_meta": {
- "key": "organization.add.success",
- "message": "Erfolgreich gespeichert"
}, - "key": "organization.add.success",
- "message": "Erfolgreich gespeichert"
}
Save multiple locations to a single organization.
orgId required | string ID of the organization. |
NX-Token required | string |
id required | string This is the orgID |
name required | string |
rout | string |
street | string |
streetnumber | string |
city | string |
vendorid | string This property will be matched with the location when creating an order |
commerceType | string Enum: "commerce" "service" |
iban required | string <iban> |
{- "id": "string",
- "name": "string",
- "rout": "string",
- "street": "string",
- "streetnumber": "string",
- "city": "string",
- "vendorid": "string",
- "commerceType": "commerce",
- "iban": "string"
}
{- "key": "organization.location.success",
- "message": "Erfolgreich gespeichert",
- "version": 4
}
This can only be done by the logged in user.
orgId required | string ID of the organization. |
NX-Token required | string |
from | string <date> Date as UTC timestamp. Start date of interval for payment report. |
to | string <date> Date as UTC timestamp. End date of interval for payment report. |
{- "from": "2019-08-24",
- "to": "2019-08-24"
}
[- {
- "orgId": "string",
- "orgName": "string",
- "createDate": "16.03.2021 15:00",
- "label": "string",
- "scheme": "string",
- "amount": "string",
- "name": "string",
- "reference": "string",
- "id": "string",
- "customer": "string",
- "meta": [
- {
- "type": "string",
- "desc": "string"
}
], - "invoicefields": [
- {
- "no": "string",
- "debitor": "string"
}
]
}
]
This can only be done by the logged in user.
orgId required | string ID of the organization. |
NX-Token required | string |
attachment | string <binary> File size has to be less than 5mb; body should be a form-data object which contains the file with the key 'attachment'. The file should be a csv or tsv and required the columns uniqueBookingId, label, amount, orderId, invoiceNo. |
{- "count": 1,
- "new": 0,
- "skip": 1,
- "key": "bookings.import.success",
- "message": "Erfolgreich gespeichert",
- "responseversion": 4
}
This can only be done by the logged in user.
orgId required | string ID of the organization. |
NX-Token required | string |
required | Array of objects Each Object represent a payment to import |
{- "list": [
- {
- "orderId": "string",
- "label": "string",
- "unique": "string",
- "amount": 0,
- "invoiceNo": "string",
- "comment": "string",
- "customerId": "string",
- "additionalMetadata": { },
- "sender_data": {
- "iban": "string",
- "bic": "string",
- "name": "string",
- "sendername": "string"
}
}
]
}
{- "count": 2,
- "new": 2,
- "skip": 0,
- "key": "bookings.file.success",
- "message": "Erfolgreich gespeichert",
- "responseversion": 4
}
If you want to set up a webhook for continuous updates for your orders please contact dev@nx-technologies.com so we can whitelist your URL.
Webhook Key | Reason |
---|---|
order.created | An order has been created |
order.confirmed | The order has been fully paid (includes gwg check if neccessarry) |
order.archived | The order has been archived |
order.assets.updated | An asset of the order has been updated |
order.name.updated | The name of the order has been updated |
order.payment.created | A Payment has been created for the order |
order.payment.confirmed | The Payment has been confirmed |
order.payment.received | The Payment has been received |
order.payment.reseted | The Payment has been resetted |
order.payment.gwg.reseted | The status for gwg has been resetted |
order.payment.deleted | The Payment has been deleted |
order.payment.updated | The Payment has been updated |
{
"key": "order.name.updated",
"text": "*order.name.updated* for *<orderName>* (5 €) new status: *open*",
"order": {
"id": "<orderId>",
"name": "<orderName>",
"figures": {
"topaytotal": 500,
"toconfirm": 0,
"toreceive": 0,
"isreceived": 0,
"ispaid": 0,
"topay": 500,
"deficit": 500
},
"status": "open",
"createDate": "2022-02-22T22:22:22.222Z"
},
"organization": {
"id": "<organizationId>",
"name": "<organizationName>"
},
"hmac":"48656c6c6f2c2063616e20796f752068656172206d653f2049742773206d652e"
}
hmac contains the HMAC computed by the secret and the webhhook response (excluding hmac) which can be verified by
strippedJSON = stripHmac(responseJSON);
hmac = createHmac('sha256', secret, strippedJSON).hex;
if (responseJSON.hmac !== hmac) throw Error('Invalid hmac');
This can only be done by the logged in user.
orgId required | string |
NX-Token required | string |
{- "total": 0,
- "list": [
- {
- "id": "string",
- "organization": "string",
- "url": "string",
- "createDate": "2019-08-24"
}
]
}
This can only be done by the logged in user.
NX-Token required | string |
orgId required | string |
url required | string |
secret | string |
{- "orgId": "string",
- "url": "string",
- "secret": "string"
}
{- "key": "webhook.create.success",
- "message": "Erfolgreich gespeichert"
}
In order to initialize a transaction at a specific smartkasse a 3-step process has to be implemented.
First: the /list
endpoint has to be called, to get a list of all available smartkasse for the organization in question.
Second: the returned list has to be used to let the user select the smartkasse where to initialize the transaction.
Third: the selected smartkasse id and an order id has to be send to the /startTransaction
endpoint.
The Cardreader will then prompt the Customer the amount that has to be paid.
prompts the smartkasse to start a transaction
NX-Token required | string |
orderId required | string orderId from bezahl.de |
smartkasse required | string id for the smartkassen (check smartkasse/list) |
{- "orderId": "string",
- "smartkasse": "string"
}
{- "_meta": {
- "key": "smartkasse.startTransaction.success",
- "message": "Erfolgreich gespeichert"
}
}
Get paymentdata from adyen and process it accordingly to organization settings.
This can only be done by the logged in user.
NX-Token required | string |
orgId required | string id of the organization |
batch | number batch number to pull from adyen starting at 1 |
isJSON | boolean response will contain the report in json, no mail is send |
force | boolean send the report by mail regardless of organization settings |
{- "orgId": "string",
- "batch": 1,
- "isJSON": true,
- "force": true
}
{- "_meta": {
- "key": "adyen.processsettlementreport.success",
- "message": "Erfolgreich gespeichert",
- "version": 0
}
}