curl --request POST \
--url https://api.maesn.dev/accounting/v2/bookingProposals \
--header 'Content-Type: multipart/form-data' \
--header 'X-ACCOUNT-KEY: <x-account-key>' \
--header 'X-API-KEY: <x-api-key>' \
--form 'bookingProposal={
"id": "23a24449-6v28-446e-bb12-3f428073fc",
"addresses ": [
{
"city": "Berlin"
}
],
"bankAccount": {
"id": "5a6b7f5dw45c1c-403e-ad56-202fbc312414",
"bic": "DEUTDEFF",
"code": "50010517",
"iban": "DE89370400440532013000",
"number": 5407324931
},
"bookingProposalDate": "2025-07-14T00:00:00Z",
"contact": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"accountNumber": 70000,
"name": "John Doe"
},
"currency": "EUR",
"deliveryDate": "2025-07-26T00:00:00Z",
"discountPaymentDate": "2025-07-16T00:00:00Z",
"discountPaymentDate2": "2025-07-18T00:00:00Z",
"dueDate": "2025-07-24T00:00:00Z",
"journalCode": "60",
"isPaymentOrder": "true",
"ledgerName": "Eingangsrechnungen",
"lineItems": [
{
"id": "Item-112233",
"account": {
"id": "db32-4f56-8a9b-1234567890ab",
"code": "200",
"name": "EXPENSE",
"number": 4900
},
"description": "Item A",
"dimensions": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"code": "CS1",
"dimension": "CostCenter",
"name": "Jerde, Greenfelder and Jacobi"
},
"discountAmount": 100,
"discountAmount2": 50,
"discountPercentage": 20,
"discountPercentage2": 10,
"taxCode": "9",
"taxRatePercentage": 19,
"totalGrossAmount": 500,
"totalNetAmount": 450,
"type": "SERVICE"
}
],
"notes": "Bill for maintenance services",
"number": "1233330",
"orderId": "3344566",
"paidDate": "2025-07-20T00:00:00Z",
"paymentTermId": "03",
"status": "DRAFT",
"totalGrossAmount": 500,
"vatId": "DE987654321"
}' \
--form bookingType=BILL \
--form 'files=<string>' \
--form 'folderManagement={
"category": "Accounting",
"folder": "Documents",
"register": "2025 January"
}' \
--form files.items='@example-file'{
"meta": {
"warnings": [
"Field not used by target system"
],
"pagination": {
"total": 125,
"perPage": 50,
"currentPage": 1,
"totalPages": 3
}
},
"data": {
"id": "23a24449-6v28-446e-bb12-3f428073fc",
"addresses ": [
{
"city": "Berlin"
}
],
"bankAccount": {
"id": "5a6b7f5dw45c1c-403e-ad56-202fbc312414",
"bic": "DEUTDEFF",
"code": "50010517",
"iban": "DE89370400440532013000",
"number": 5407324931
},
"bookingProposalDate": "2025-07-14T00:00:00Z",
"contact": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"accountNumber": 70000,
"name": "John Doe"
},
"createdDate": "2025-07-14T00:00:00Z",
"currency": "EUR",
"deliveryDate": "2025-07-26T00:00:00Z",
"discountPaymentDate": "2025-07-16T00:00:00Z",
"discountPaymentDate2": "2025-07-18T00:00:00Z",
"dueDate": "2025-07-24T00:00:00Z",
"files": [
"file1.pdf"
],
"journalCode": "60",
"isPaymentOrder": "true",
"ledgerName": "Ausgangsrechnungen",
"lineItems": [
{
"id": "Item-112233",
"account": {
"id": "db32-4f56-8a9b-1234567890ab",
"code": "200",
"name": "EXPENSE",
"number": 4900
},
"createdDate": "2025-07-14T00:00:00Z",
"description": "Item A",
"dimensions": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"code": "CS1",
"dimension": "CostCenter",
"name": "Jerde, Greenfelder and Jacobi"
},
"discountAmount": 100,
"discountAmount2": 50,
"discountPercentage": 20,
"discountPercentage2": 10,
"taxCode": "9",
"taxRatePercentage": 19,
"totalGrossAmount": 500,
"totalNetAmount": 450,
"type": "SERVICE",
"updatedDate": "2025-07-16T00:00:00Z"
}
],
"notes": "Bill for maintenance services",
"number": "1233330",
"orderId": "3344566",
"paidDate": "2021-01-01T00:00:00Z",
"paymentTermId": "03",
"status": "DRAFT",
"totalGrossAmount": 500,
"updatedDate": "2025-07-16T00:00:00Z",
"vatId": "DE987654321"
}
}curl --request POST \
--url https://api.maesn.dev/accounting/v2/bookingProposals \
--header 'Content-Type: multipart/form-data' \
--header 'X-ACCOUNT-KEY: <x-account-key>' \
--header 'X-API-KEY: <x-api-key>' \
--form 'bookingProposal={
"id": "23a24449-6v28-446e-bb12-3f428073fc",
"addresses ": [
{
"city": "Berlin"
}
],
"bankAccount": {
"id": "5a6b7f5dw45c1c-403e-ad56-202fbc312414",
"bic": "DEUTDEFF",
"code": "50010517",
"iban": "DE89370400440532013000",
"number": 5407324931
},
"bookingProposalDate": "2025-07-14T00:00:00Z",
"contact": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"accountNumber": 70000,
"name": "John Doe"
},
"currency": "EUR",
"deliveryDate": "2025-07-26T00:00:00Z",
"discountPaymentDate": "2025-07-16T00:00:00Z",
"discountPaymentDate2": "2025-07-18T00:00:00Z",
"dueDate": "2025-07-24T00:00:00Z",
"journalCode": "60",
"isPaymentOrder": "true",
"ledgerName": "Eingangsrechnungen",
"lineItems": [
{
"id": "Item-112233",
"account": {
"id": "db32-4f56-8a9b-1234567890ab",
"code": "200",
"name": "EXPENSE",
"number": 4900
},
"description": "Item A",
"dimensions": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"code": "CS1",
"dimension": "CostCenter",
"name": "Jerde, Greenfelder and Jacobi"
},
"discountAmount": 100,
"discountAmount2": 50,
"discountPercentage": 20,
"discountPercentage2": 10,
"taxCode": "9",
"taxRatePercentage": 19,
"totalGrossAmount": 500,
"totalNetAmount": 450,
"type": "SERVICE"
}
],
"notes": "Bill for maintenance services",
"number": "1233330",
"orderId": "3344566",
"paidDate": "2025-07-20T00:00:00Z",
"paymentTermId": "03",
"status": "DRAFT",
"totalGrossAmount": 500,
"vatId": "DE987654321"
}' \
--form bookingType=BILL \
--form 'files=<string>' \
--form 'folderManagement={
"category": "Accounting",
"folder": "Documents",
"register": "2025 January"
}' \
--form files.items='@example-file'{
"meta": {
"warnings": [
"Field not used by target system"
],
"pagination": {
"total": 125,
"perPage": 50,
"currentPage": 1,
"totalPages": 3
}
},
"data": {
"id": "23a24449-6v28-446e-bb12-3f428073fc",
"addresses ": [
{
"city": "Berlin"
}
],
"bankAccount": {
"id": "5a6b7f5dw45c1c-403e-ad56-202fbc312414",
"bic": "DEUTDEFF",
"code": "50010517",
"iban": "DE89370400440532013000",
"number": 5407324931
},
"bookingProposalDate": "2025-07-14T00:00:00Z",
"contact": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"accountNumber": 70000,
"name": "John Doe"
},
"createdDate": "2025-07-14T00:00:00Z",
"currency": "EUR",
"deliveryDate": "2025-07-26T00:00:00Z",
"discountPaymentDate": "2025-07-16T00:00:00Z",
"discountPaymentDate2": "2025-07-18T00:00:00Z",
"dueDate": "2025-07-24T00:00:00Z",
"files": [
"file1.pdf"
],
"journalCode": "60",
"isPaymentOrder": "true",
"ledgerName": "Ausgangsrechnungen",
"lineItems": [
{
"id": "Item-112233",
"account": {
"id": "db32-4f56-8a9b-1234567890ab",
"code": "200",
"name": "EXPENSE",
"number": 4900
},
"createdDate": "2025-07-14T00:00:00Z",
"description": "Item A",
"dimensions": {
"id": "eaa28f49-6028-4b6e-bb12-d8f6278073fc",
"code": "CS1",
"dimension": "CostCenter",
"name": "Jerde, Greenfelder and Jacobi"
},
"discountAmount": 100,
"discountAmount2": 50,
"discountPercentage": 20,
"discountPercentage2": 10,
"taxCode": "9",
"taxRatePercentage": 19,
"totalGrossAmount": 500,
"totalNetAmount": 450,
"type": "SERVICE",
"updatedDate": "2025-07-16T00:00:00Z"
}
],
"notes": "Bill for maintenance services",
"number": "1233330",
"orderId": "3344566",
"paidDate": "2021-01-01T00:00:00Z",
"paymentTermId": "03",
"status": "DRAFT",
"totalGrossAmount": 500,
"updatedDate": "2025-07-16T00:00:00Z",
"vatId": "DE987654321"
}
}DATEV Unternehmen Online
GET asyncTask endpoint.For more info about asynchronous tasks visit the Asynchronous Task section.companyId is accurately populated with the appropriate company ID. You can obtain this value by using the GET Companies endpoint available under the Authentication section.Show properties
id field represents the unique identifier of the booking proposal.id must be a valid UUID; otherwise, it will be ignored.This field is only relevant and used when uploading files with the booking proposal.Show properties
bic field must respect the following pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}[A-Z0-9]{0,3}$.Example: DEUTDEFF.code must respect the following pattern: ^([1-9]|[0-9]{2,10})$If code is provided, then number is required.Example: 37040044iban field must respect the following pattern: ^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$.Example: DE89370400440532013000.number field must be 1-10 digits long and includes only numbers.If number is provided, then code is required.Example: 532013000Standardized Data section.Show properties
accountNumber field represents the account number of the contact associated with the booking proposal.It must be a valid number. The length must be equal to the account configured length + 1.It is the customer account number for INVOICE and CREDIT_NOTE or the vendor account number for BILL and VENDOR_CREDIT.name field represents the name of the contact associated with the booking proposal.It cannot exceed 50 characters in length.currency field supports ISO 3166-1 alpha-2 (2-letter codes).
For details visits the Standardized Data section.Standardized Data section.Standardized Data section.The discountPaymentDate field represents the date until which a discount (discountAmount and discountPercentage in line items) can be applied to the payment.If discountPaymentDate is provided, then discountAmount and discountPercentage are required for each line item.Its value must be earlier than the dueDate and later than the bookingProposalDate.Standardized Data section.The discountPaymentDate2 field represents the date until which a discount (discountAmount2 and discountPercentage2 in line items) can be applied to the payment.If provided, discountPaymentDate, discountAmount, discountPercentage, discountAmount2 and discountPercentage2 are required for each line item.Its value must be earlier than the dueDate and later than the bookingProposalDate and discountPaymentDate.Standardized Data section.The dueDate field represents the date by which the payment for the booking proposal is expected to be made.It is required when discount fields are provided. It must be after the bookingProposalDate.isPaymentOrder field determines whether a payment instruction (transfer for bills or direct debit for invoices) should
be automatically created when the booking proposal is processed.It must be false if paymentTermId is equal to 9.ledgerName field represents the name of the correct ledger folder where the data will be sent to.To get the correct name, you can use the GET Accounts endpoint.INVOICE and CREDIT_NOTE booking proposals, the ledgerName must be of type ACCOUNT_RECEIVABLE, and for BILL and VENDOR_CREDIT booking proposals, it must be of type ACCOUNT_PAYABLE.Show properties
Show properties
name field specifies the name of the general ledger account linked to the individual line item.It cannot exceed 40 characters in length.number field specifies the general ledger account linked to the individual line item.It must be a valid number. The length must be equal to the account configured length.description field provides details about the specific line item in the booking proposal.It cannot exceed 60 characters in length.Show properties
name field specifies the name of the dimension associated with the line item.It cannot exceed 36 characters in length. It must follow the pattern : ^([\S][\S ]{0,34}[\S]|[\S]{0,1})$.Example: Marketing.discountAmount field represents the fixed amount to be discounted if paid by the discountPaymentDate.It must be a positive number with up to 8 digits before the decimal point and exactly 2 digits after.It cannot exceed the line item’s totalGrossAmount.discountAmount2 field represents the fixed amount to be discounted if paid by the discountPaymentDate2.It must be a positive number with up to 8 digits before the decimal point and exactly 2 digits after.It cannot exceed the line item’s totalGrossAmount and the discountAmount.discountPercentage field represents the percentage to be discounted if paid by the discountPaymentDate.It must be a positive number with up to 2 digits before the decimal point and up to 2 digits after.It cannot exceed 100%.discountPercentage2 field represents the percentage to be discounted if paid by the discountPaymentDate2.It must be a positive number with up to 2 digits before the decimal point and up to 2 digits after.It must be less then the discountPercentage.taxCode field represents the BU code associated with the line item.It must be max 4 characters long. Only numbers are allowed.taxRatePercentage field represents the tax rate applied to the line item.It must be a positive number.totalGrossAmount field represents the total gross amount for the specific line item.It must be a number with up to 10 digits before the decimal point and up to 2 digits after.It cannot be zero.notes field allows for additional information or comments related to the booking proposal.
It cannot exceed 120 characters in length.number field represents the document number.It must match the pattern: ^[a-zA-Z0-9$%&*\+\-/]{0,36}$.orderId field represents the order identifier associated with the booking proposal.It must match the pattern: ^[a-zA-Z0-9$%&*+\-./]{1,30}$.Standardized Data section.paymentTermId field represents the identifier of the payment term associated with the booking proposal.It is max 3 characters long. It must includes only numbers.If provided, the discount fields are not allowed.totalGrossAmount field represents the total gross amount for the entire booking proposal.It cannot be zero and must equal the sum of the totalGrossAmount of all line items.It must always be a positive amount. The bookingType (INVOICE, BILL, CREDIT_NOTE, VENDOR_CREDIT) determines the document type.vatId field represents the VAT identification number associated with the booking proposal.It must match pattern: ^[0-9a-zA-Z\. _]{1,15}$.INVOICE, BILL, CREDIT_NOTE, VENDOR_CREDITfiles array can be used to attach files to the booking proposal.invoice.pdf.folderManagement object defines the three-level folder structure for a booking proposal. If not provided, the default structure will be used.Show properties
Was this page helpful?