### User Settings Response Example Source: https://www.bookamat.com/dokumentation/api/v1/user Example JSON response for the /user/settings/ endpoint, illustrating the structure of user-specific settings. The response includes an ID, group, purchase tax settings, and various tax percentage initial values. ```JSON HTTP/1.0 200 OK Content-Type: application/json; charset=utf-8 { "count": 1, "next": null, "previous": null, "results": [ { "id": 100, "group": "1", "purchasetax": true, "purchasetax_range": "1", "ic_report_range": "1", "tax_percent": "20.00", "deductibility_tax_percent": "0.00", "deductibility_income_percent": "100.00" } ] } ``` -------------------------------- ### User Accounts Response Example Source: https://www.bookamat.com/dokumentation/api/v1/user Example JSON response for the /user/accounts/ endpoint, detailing the structure of active user accounts. It includes pagination information (count, next, previous) and a list of account objects, each with an ID, country, year, and URL. ```JSON HTTP/1.0 200 OK Content-Type: application/json; charset=utf-8 { "count": 2, "next": null, "previous": null, "results": [ { "id": 100, "country": "Österreich", "year": 2015, "url": "/at/2015/" }, { "id": 101, "country": "Österreich", "year": 2014, "url": "/at/2014/" } ] } ``` -------------------------------- ### User Exemptions Response Example Source: https://www.bookamat.com/dokumentation/api/v1/user Example JSON response for the /user/exemptions/ endpoint, showing the structure for tax exemption values. The response includes an ID and specific exemption fields like exemption_9221, exemption_9227, etc. ```JSON HTTP/1.0 200 OK Content-Type: application/json; charset=utf-8 { "count": 1, "next": null, "previous": null, "results": [ { "id": 100, "exemption_9221": "2500.00", "exemption_9227": "0.00", "exemption_9229": "0.00", "exemption_9276": "0.00", "exemption_9277": "0.00" } ] } ``` -------------------------------- ### List Bookings via GET Request Source: https://www.bookamat.com/dokumentation/api/v1/bookings Retrieves a list of all bookings using a GET request to the specified URL. The response includes a count of bookings, links to next/previous pages if available, and an array of booking objects. Each booking object contains details like ID, status, title, document number, dates, cost center information, amounts, tags, and attachments. ```HTTP GET /bookings/ ``` ```JSON HTTP/1.0 200 OK Content-Type: application/json; charset=utf-8 { "count": 2, "next": null, "previous": null, "results": [ { "id": 6782, "status": "1", "title": "Büromiete", "document_number": "1-1", "date": "2015-01-01", "date_invoice": null, "date_delivery": null, "date_order": null, "costcentre": { "id": 4523, "name": "Büro" }, "amounts": [ { "group": "2", "bankaccount": { "id": 1254, "name": "Bankkonto" }, "costaccount": { "id": 2369, "name": "Miete und Pacht" }, "purchasetaxaccount": { "id": 3476, "name": "Vorsteuer Inland" }, "amount": "400.00", "amount_after_tax": "400.00", "tax_percent": "20.00", "tax_value": "80.00", "deductibility_tax_percent": "100.00", "deductibility_tax_value": "80.00", "deductibility_amount_percent": "100.00", "deductibility_amount_value": "400.00", "foreign_business_base": null, "country_dep": "", "country_rec": "" } ], "tags": [], "attachments": [ { "id": 8904, "name": "Rechnung.pdf", "size": 10700 } ], "vatin": "", "country": "", "description": "", "create_date": "2015-01-01T11:00:00", "update_date": "2015-01-01T11:00:00" }, { "id": 6783, "status": "1", "title": "Servermiete", "document_number": "1-2", "date": "2015-01-02", "date_invoice": "2015-01-02", "date_delivery": "2015-01-02", "date_order": null, "costcentre": null, "amounts": [ { "group": "2", "bankaccount": { "id": 1255, "name": "Kreditkarte" }, "costaccount": { "id": 2369, "name": "Lizenzgebühren" }, "purchasetaxaccount": { "id": 3476, "name": "IG Erwerb von Leistungen" }, "amount": "400.00", "amount_after_tax": "400.00", "tax_percent": "20.00", "tax_value": "80.00", "deductibility_tax_percent": "100.00", "deductibility_tax_value": "80.00", "deductibility_amount_percent": "100.00", "deductibility_amount_value": "400.00", "foreign_business_base": null, "country_dep": "", "country_rec": "" } ], "tags": [ { "id": 9723, "tag": 5680, "name": "Server" } ], "attachments": [], "vatin": "DE123456789", "country": "DE", "description": "", "create_date": "2015-01-02T12:00:00", "update_date": "2015-01-02T12:00:00" } ] } ``` -------------------------------- ### List Assets (GET Request) Source: https://www.bookamat.com/dokumentation/api/v1/inventories Retrieves a list of all assets. This endpoint requires a GET request to the specified URL. The response includes a count of assets and an array of asset objects, each containing detailed financial and descriptive information. ```HTTP GET /inventories/ ``` -------------------------------- ### GET /inventories/ Source: https://www.bookamat.com/dokumentation/api/v1/inventories Retrieves a list of all assets. This endpoint supports filtering and pagination through query parameters. ```APIDOC ## GET /inventories/ ### Description Retrieves a list of all assets. Assets are business assets that are depreciated over several years. ### Method GET ### Endpoint /inventories/ ### Parameters #### Query Parameters - **count** (integer) - Description of the total number of assets available. - **next** (url) - URL for the next page of results, if available. - **previous** (url) - URL for the previous page of results, if available. #### Request Body This endpoint does not accept a request body. ### Response #### Success Response (200) - **count** (integer) - The total number of assets. - **next** (url) - The URL to retrieve the next page of results. - **previous** (url) - The URL to retrieve the previous page of results. - **results** (array) - A list of asset objects. - **id** (integer) - Unique identifier for the asset. - **title** (string) - The name or title of the asset. - **date_purchase** (string) - The date the asset was purchased (YYYY-MM-DD). - **date_commissioning** (string) - The date the asset was put into service (YYYY-MM-DD). - **date_disposal** (string/null) - The date the asset was disposed of, if applicable. - **amount_after_tax** (string) - The cost of the asset after tax. - **deductibility_percent** (string) - The percentage of the asset's cost that is deductible. - **deductibility_amount** (string) - The deductible amount of the asset's cost. - **deductibility_declining_percent** (string/null) - The declining balance depreciation percentage, if applicable. - **deductibility_switch_year** (integer/null) - The year in which a switch in depreciation method occurs, if applicable. - **deductibility_years** (integer) - The number of years over which the asset is depreciated. - **deductibility_type** (object) - Information about the depreciation method. - **id** (integer) - The ID of the depreciation type. - **name** (string) - The name of the depreciation type (e.g., "Linear", "Sofortabschreibung"). - **costaccount** (object) - Information about the cost account associated with the asset. - **id** (integer) - The ID of the cost account. - **name** (string) - The name of the cost account. - **amounts** (array) - An array of depreciation amounts per year. - **year** (integer) - The year for which depreciation is calculated. - **depreciation_percent** (string) - The depreciation percentage for that year. - **depreciation_amount** (string) - The depreciation amount for that year. - **cumulated_depreciation** (string) - The accumulated depreciation up to that year. - **residual_value** (string) - The remaining value of the asset at the end of the year. - **attachments** (array) - A list of attached documents (e.g., invoices). - **id** (integer) - The ID of the attachment. - **name** (string) - The name of the attachment file. - **size** (integer) - The size of the attachment file in bytes. - **description** (string) - Additional description for the asset. - **seller** (string) - The seller of the asset. - **create_date** (string) - The date and time the asset record was created. - **update_date** (string) - The date and time the asset record was last updated. #### Response Example ```json { "count": 2, "next": null, "previous": null, "results": [ { "id": 7896, "title": "Laptop", "date_purchase": "2015-01-14", "date_commissioning": "2015-01-15", "date_disposal": null, "amount_after_tax": "3000.00", "deductibility_percent": "100.00", "deductibility_amount": "3000.00", "deductibility_declining_percent": null, "deductibility_switch_year": null, "deductibility_years": 3, "deductibility_type": { "id": 1, "name": "Linear" }, "costaccount": { "id": 2388, "name": "Betriebs- und Geschäftsausstattung" }, "amounts": [ { "year": 2015, "depreciation_percent": "33.33", "depreciation_amount": "1000.00", "cumulated_depreciation": "1000.00", "residual_value": "2000.00" }, { "year": 2016, "depreciation_percent": "33.33", "depreciation_amount": "1000.00", "cumulated_depreciation": "2000.00", "residual_value": "1000.00" }, { "year": 2017, "depreciation_percent": "33.33", "depreciation_amount": "1000.00", "cumulated_depreciation": "3000.00", "residual_value": "0.00" } ], "attachments": [ { "id": 8914, "name": "Rechnung.pdf", "size": 10700 } ], "description": "", "seller": "", "create_date": "2015-01-16T17:00:00", "update_date": "2015-01-16T17:00:00" }, { "id": 7897, "title": "Monitor", "date_purchase": "2015-05-14", "date_commissioning": "2015-05-15", "date_disposal": null, "amount_after_tax": "400.00", "deductibility_percent": "100.00", "deductibility_amount": "400.00", "deductibility_declining_percent": null, "deductibility_switch_year": null, "deductibility_years": 1, "deductibility_type": { "id": 2, "name": "Sofortabschreibung" }, "costaccount": { "id": 2389, "name": "Geringwertige WG (Abschreibung)" }, "amounts": [ { "year": 2015, "depreciation_percent": "100.00", "depreciation_amount": "400.00", "cumulated_depreciation": "400.00", "residual_value": "0.00" } ], "attachments": [], "description": "", "seller": "", "create_date": "2015-05-16T17:00:00", "update_date": "2015-05-16T17:00:00" } ] } ``` ``` -------------------------------- ### GET /configuration/purchasetaxaccounts/ Source: https://www.bookamat.com/dokumentation/api/v1/configuration Retrieves a list of all predefined VAT accounts. Only activated accounts are relevant for bookings. Supports filtering and ordering. ```APIDOC ## GET /configuration/purchasetaxaccounts/ ### Description Retrieves a list of all predefined VAT accounts. Only activated accounts are relevant for bookings. Supports filtering and ordering. ### Method GET ### Endpoint /configuration/purchasetaxaccounts/ ### Query Parameters - **group** (string) - Optional - Filters by group (1 for income, 2 for expenses). - **reverse_charge** (boolean) - Optional - Filters by reverse charge status (true/false). - **ic_report** (boolean) - Optional - Filters by consolidated report status (true/false). - **ic_delivery** (boolean) - Optional - Filters by consolidated report for delivery status (true/false). - **ic_service** (boolean) - Optional - Filters by consolidated report for service status (true/false). - **ioss_report** (boolean) - Optional - Filters by IOSS status (true/false). - **eu_oss_report** (boolean) - Optional - Filters by EU-OSS status (true/false). - **tax_values** (string) - Optional - Filters by allowed tax values (e.g., "9090"). - **index_purchasetax** (string) - Optional - Filters by purchase tax index (e.g., "9090"). - **ordering** (string) - Optional - Specifies the sorting order (e.g., "id", "name", "section"). ### Response #### Success Response (200) - **count** (integer) - The total number of VAT accounts. - **next** (string) - URL for the next page of results. - **previous** (string) - URL for the previous page of results. - **results** (array) - A list of VAT account objects. - **id** (integer) - Unique identifier. - **name** (string) - Name of the VAT account (max 40 characters). - **section** (string) - Section of the VAT account. - **group** (string) - Group for income (1) or expenses (2). - **reverse_charge** (boolean) - Indicates if reverse charge applies. - **ic_report** (boolean) - Indicates if consolidated reporting applies. - **ic_delivery** (boolean) - Indicates if consolidated reporting for delivery applies. - **ic_service** (boolean) - Indicates if consolidated reporting for service applies. - **ioss_report** (boolean) - Indicates if IOSS reporting applies. - **eu_oss_report** (boolean) - Indicates if EU-OSS reporting applies. - **tax_values** (array) - List of allowed tax rate strings. - **index_purchasetax** (array) - List of purchase tax index strings. - **description** (string) - Description of the VAT account. #### Response Example ```json { "count": 14, "next": ".../api/v1/at/2015/configuration/purchasetaxaccounts/?page=2", "previous": null, "results": [ { "id": 211, "name": "Umsatzsteuer Inland", "section": "Inland", "group": "1", "reverse_charge": false, "ic_report": false, "ic_delivery": false, "ic_service": false, "ioss_report": false, "eu_oss_report": false, "tax_values": ["20.00", "10.00", "12.00"], "index_purchasetax": ["000", "022", "025", "029"], "description": "Dieses Umsatzsteuerkonto verwendest du für Einnahmen ..." } ] } ``` ``` -------------------------------- ### GET /bookings/open/ Source: https://www.bookamat.com/dokumentation/api/v1/bookings Retrieves a list of all open bookings. All filtering and sorting options available for booked bookings apply here as well. ```APIDOC ## List of Open Bookings ### Description Retrieves a list of all open bookings. All other options (fields, filters, sorting) are identical to the list view for booked bookings. ### Method GET ### Endpoint `/bookings/open/` ``` -------------------------------- ### Retrieve Tax Account Details (GET) Source: https://www.bookamat.com/dokumentation/api/v1/cost_accounts Fetches details of a specific active tax account using a GET request to the detail URL. The available fields are the same as in the list view. ```HTTP GET /preferences/costaccounts/{id}/ ``` -------------------------------- ### Get Tag Detail (GET) Source: https://www.bookamat.com/dokumentation/api/v1/tags Retrieves the details of a specific tag using its ID. The response includes the same fields as the list view. ```HTTP GET /preferences/tags/{id}/ ``` -------------------------------- ### Retrieve Purchase Tax Account Details (GET) Source: https://www.bookamat.com/dokumentation/api/v1/purchasetax_accounts Fetches details of a single activated purchase tax account using a GET request to the detail URL. The available fields are the same as in the list view. ```HTTP GET /preferences/purchasetaxaccounts/{id}/ ``` -------------------------------- ### Retrieve User Accounts (GET) Source: https://www.bookamat.com/dokumentation/api/v1/user Fetches all active packages for a specific user. Note the special URL structure without the standard API prefix. The response includes a list of accounts with their ID, country, year, and application URL. ```HTTP GET /user/accounts/ GET /user/accounts/{id}/ ``` -------------------------------- ### GET /configuration/purchasetaxaccounts/{id}/ Source: https://www.bookamat.com/dokumentation/api/v1/configuration Retrieves details for a specific predefined VAT account by its ID. ```APIDOC ## GET /configuration/purchasetaxaccounts/{id}/ ### Description Retrieves details for a specific predefined VAT account by its ID. ### Method GET ### Endpoint /configuration/purchasetaxaccounts/{id}/ #### Path Parameters - **id** (integer) - Required - The unique identifier of the VAT account. ### Response #### Success Response (200) - **id** (integer) - Unique identifier. - **name** (string) - Name of the VAT account (max 40 characters). - **section** (string) - Section of the VAT account. - **group** (string) - Group for income (1) or expenses (2). - **reverse_charge** (boolean) - Indicates if reverse charge applies. - **ic_report** (boolean) - Indicates if consolidated reporting applies. - **ic_delivery** (boolean) - Indicates if consolidated reporting for delivery applies. - **ic_service** (boolean) - Indicates if consolidated reporting for service applies. - **ioss_report** (boolean) - Indicates if IOSS reporting applies. - **eu_oss_report** (boolean) - Indicates if EU-OSS reporting applies. - **tax_values** (array) - List of allowed tax rate strings. - **index_purchasetax** (array) - List of purchase tax index strings. - **description** (string) - Description of the VAT account. #### Response Example ```json { "id": 211, "name": "Umsatzsteuer Inland", "section": "Inland", "group": "1", "reverse_charge": false, "ic_report": false, "ic_delivery": false, "ic_service": false, "ioss_report": false, "eu_oss_report": false, "tax_values": ["20.00", "10.00", "12.00"], "index_purchasetax": ["000", "022", "025", "029"], "description": "Dieses Umsatzsteuerkonto verwendest du für Einnahmen ..." } ``` ``` -------------------------------- ### GET /bookings/ Source: https://www.bookamat.com/dokumentation/api/v1/bookings Retrieves a list of all bookings. This endpoint supports filtering and pagination through query parameters (though not explicitly detailed here). ```APIDOC ## GET /bookings/ ### Description Retrieves a list of all booked bookings. ### Method GET ### Endpoint /bookings/ ### Parameters #### Query Parameters * **count** (integer) - The total number of bookings available. * **next** (string) - URL for the next page of results, if any. * **previous** (string) - URL for the previous page of results, if any. #### Request Body This endpoint does not accept a request body. ### Response #### Success Response (200) Returns a JSON object containing a list of bookings. - **id** (integer) - Unique identifier for the booking. - **status** (string) - The status of the booking. - **title** (string) - The title or name of the booking. - **document_number** (string) - The associated document number. - **date** (string) - The date of the booking (YYYY-MM-DD). - **date_invoice** (string/null) - The invoice date (YYYY-MM-DD). - **date_delivery** (string/null) - The delivery date (YYYY-MM-DD). - **date_order** (string/null) - The order date (YYYY-MM-DD). - **costcentre** (object/null) - Information about the cost center associated with the booking. - **id** (integer) - The ID of the cost center. - **name** (string) - The name of the cost center. - **amounts** (array) - An array of financial amounts associated with the booking. - **group** (string) - The group identifier for the amount. - **bankaccount** (object) - Details of the bank account. - **id** (integer) - The ID of the bank account. - **name** (string) - The name of the bank account. - **costaccount** (object) - Details of the cost account. - **id** (integer) - The ID of the cost account. - **name** (string) - The name of the cost account. - **purchasetaxaccount** (object) - Details of the purchase tax account. - **id** (integer) - The ID of the purchase tax account. - **name** (string) - The name of the purchase tax account. - **amount** (string) - The base amount. - **amount_after_tax** (string) - The amount including tax. - **tax_percent** (string) - The tax percentage. - **tax_value** (string) - The calculated tax value. - **deductibility_tax_percent** (string) - The tax deductibility percentage. - **deductibility_tax_value** (string) - The tax deductibility value. - **deductibility_amount_percent** (string) - The amount deductibility percentage. - **deductibility_amount_value** (string) - The amount deductibility value. - **foreign_business_base** (null) - Placeholder for foreign business base information. - **country_dep** (string) - Country code for depreciation. - **country_rec** (string) - Country code for reception. - **tags** (array) - An array of tags associated with the booking. - **id** (integer) - The ID of the tag. - **tag** (integer) - The tag identifier. - **name** (string) - The name of the tag. - **attachments** (array) - An array of attachments associated with the booking. - **id** (integer) - The ID of the attachment. - **name** (string) - The name of the attachment file. - **size** (integer) - The size of the attachment in bytes. - **vatin** (string) - The VAT identification number. - **country** (string) - The country code. - **description** (string) - A description for the booking. - **create_date** (string) - The date and time when the booking was created (ISO 8601 format). - **update_date** (string) - The date and time when the booking was last updated (ISO 8601 format). #### Response Example ```json { "count": 2, "next": null, "previous": null, "results": [ { "id": 6782, "status": "1", "title": "Büromiete", "document_number": "1-1", "date": "2015-01-01", "date_invoice": null, "date_delivery": null, "date_order": null, "costcentre": { "id": 4523, "name": "Büro" }, "amounts": [ { "group": "2", "bankaccount": { "id": 1254, "name": "Bankkonto" }, "costaccount": { "id": 2369, "name": "Miete und Pacht" }, "purchasetaxaccount": { "id": 3476, "name": "Vorsteuer Inland" }, "amount": "400.00", "amount_after_tax": "400.00", "tax_percent": "20.00", "tax_value": "80.00", "deductibility_tax_percent": "100.00", "deductibility_tax_value": "80.00", "deductibility_amount_percent": "100.00", "deductibility_amount_value": "400.00", "foreign_business_base": null, "country_dep": "", "country_rec": "" } ], "tags": [], "attachments": [ { "id": 8904, "name": "Rechnung.pdf", "size": 10700 } ], "vatin": "", "country": "", "description": "", "create_date": "2015-01-01T11:00:00", "update_date": "2015-01-01T11:00:00" }, { "id": 6783, "status": "1", "title": "Servermiete", "document_number": "1-2", "date": "2015-01-02", "date_invoice": "2015-01-02", "date_delivery": "2015-01-02", "date_order": null, "costcentre": null, "amounts": [ { "group": "2", "bankaccount": { "id": 1255, "name": "Kreditkarte" }, "costaccount": { "id": 2369, "name": "Lizenzgebühren" }, "purchasetaxaccount": { "id": 3476, "name": "IG Erwerb von Leistungen" }, "amount": "400.00", "amount_after_tax": "400.00", "tax_percent": "20.00", "tax_value": "80.00", "deductibility_tax_percent": "100.00", "deductibility_tax_value": "80.00", "deductibility_amount_percent": "100.00", "deductibility_amount_value": "400.00", "foreign_business_base": null, "country_dep": "", "country_rec": "" } ], "tags": [ { "id": 9723, "tag": 5680, "name": "Server" } ], "attachments": [], "vatin": "DE123456789", "country": "DE", "description": "", "create_date": "2015-01-02T12:00:00", "update_date": "2015-01-02T12:00:00" } ] } ``` ``` -------------------------------- ### Liste der Umsatzsteuerkonten abfragen (GET) Source: https://www.bookamat.com/dokumentation/api/v1/purchasetax_accounts Ruft eine Liste aller aktivierten Umsatzsteuerkonten ab. Diese Funktion erfordert einen GET-Request an die angegebene URL. Die Antwort enthält eine Liste von Umsatzsteuerkonten mit detaillierten Informationen. ```HTTP GET /preferences/purchasetaxaccounts/ ``` ```JSON HTTP/1.0 200 OK Content-Type: application/json; charset=utf-8 { "count": 14, "next": ".../api/v1/at/2015/preferences/purchasetaxaccounts/?page=2", "previous": null, "results": [ { "id": 3475, "purchasetaxaccount": 210, // ID des vordefinierten Umsatzsteuerkontos "name": "Umsatzsteuer Inland", "section": "Inland", "group": "1", "reverse_charge": false, "ic_report": false, "ic_delivery": false, "ic_service": false, "ioss_report": false, "eu_oss_report": false, "tax_values": ["20.00", "10.00", "12.00"], "index_purchasetax": ["000", "022", "025", "029"], "description": "Dieses Umsatzsteuerkonto verwendest du für Einnahmen ...", "active": true, "counter_booked_bookings": 10, "counter_open_bookings": 2, "counter_deleted_bookings": 3, "counter_bookingtemplates": 0 }, { "id": 3476, "purchasetaxaccount": 211, // ID des vordefinierten Umsatzsteuerkontos "name": "Vorsteuer Inland", "section": "Inland", "group": "2", "reverse_charge": false, "ic_report": false, "ic_delivery": false, "ic_service": false, "ioss_report": false, "eu_oss_report": false, "tax_values": ["20.00", "10.00", "12.00"], "index_purchasetax": ["060"], "description": "Dieses Umsatzsteuerkonto verwendest du für Ausgaben ...", "active": true, "counter_booked_bookings": 16, "counter_open_bookings": 15, "counter_deleted_bookings": 2, "counter_bookingtemplates": 12 } ] } ``` -------------------------------- ### Retrieve User Settings (GET) Source: https://www.bookamat.com/dokumentation/api/v1/user Retrieves the basic settings for a user, including tax percentages and deductibility options. These settings serve as initial values for bookings if not otherwise specified. The response contains user settings like ID, group, tax percentages, and deductibility rates. ```HTTP GET /user/settings/ GET /user/settings/{id}/ ``` -------------------------------- ### Payment Account Response Example (HTTP) Source: https://www.bookamat.com/dokumentation/api/v1/bank_accounts This snippet shows a typical HTTP response when retrieving details of a payment account. It includes various fields like ID, name, balance, and booking counters. The 'Content-Type' header indicates the response format is JSON. ```http HTTP/1.0 202 ACCEPTED Content-Type: application/json; charset=utf-8 { "id": 1255, "name": "Kreditkarte", "position": 1, "flag_balance": true, "opening_balance": "100.00" "counter_booked_bookings": 30, "counter_open_bookings": 0, "counter_deleted_bookings": 0, "counter_bookingtemplates": 5 } ``` -------------------------------- ### GET /configuration/costaccounts/ Source: https://www.bookamat.com/dokumentation/api/v1/configuration Retrieves a list of predefined tax accounts. These accounts can be activated or deactivated by users. Filtering and sorting options are available. ```APIDOC ## GET /configuration/costaccounts/ ### Description Retrieves a list of predefined tax accounts. These accounts can be activated or deactivated by users. Filtering and sorting options are available. ### Method GET ### Endpoint /configuration/costaccounts/ ### Query Parameters - **group** (string) - Optional - Filters accounts by type: '1' for income, '2' for expenses. - **inventory** (boolean) - Optional - Filters accounts for assets (true) or non-assets (false). - **index_incometax** (string) - Optional - Filters accounts by income tax declaration index (e.g., '9090'). - **ordering** (string) - Optional - Specifies the order of results. Possible values: 'id', 'name', 'section'. ### Response #### Success Response (200) - **count** (integer) - The total number of cost accounts. - **next** (string) - URL for the next page of results. - **previous** (string) - URL for the previous page of results. - **results** (array) - A list of cost account objects. - **id** (integer) - Unique identifier for the cost account. - **name** (string) - Name of the cost account (max 40 characters). - **section** (string) - Section the cost account belongs to. - **group** (string) - Indicates if the account is for income ('1') or expenses ('2'). - **inventory** (boolean) - Indicates if the account is for assets. - **index_incometax** (array) - List of income tax declaration index strings. - **deductibility_tax_percent** (string) - Percentage of deductible VAT (decimal number, null if not applicable). - **deductibility_amount_percent** (string) - Percentage of deductible net amount (decimal number, null if not applicable). - **description** (string) - Description of the cost account. - **purchasetaxaccounts** (array) - List of associated predefined purchase tax accounts. - **id** (integer) - ID of the predefined purchase tax account. - **name** (string) - Name of the purchase tax account. - **group** (string) - User group for the purchase tax account ('Vorsteuerabzugsberechtigt' or 'Kleinunternehmer'). #### Response Example ```json { "count": 74, "next": ".../api/v1/at/2015/configuration/costaccounts/?page=2", "previous": null, "results": [ { "id": 120, "name": "Einnahmen", "section": "Betriebseinnahmen", "group": "1", "inventory": false, "index_incometax": ["9040"], "deductibility_tax_percent": "100.00", "deductibility_amount_percent": "100.00", "description": "Alle Einnahmen im Inland ...", "purchasetaxaccounts": [ { "id": 211, "name": "Umsatzsteuer Inland", "group": "Vorsteuerabzugsberechtigt" }, { "id": 212, "name": "Umsatzsteuerfrei Inland (ohne Vorsteuerabzug)", "group": "Vorsteuerabzugsberechtigt" } ] } ] } ``` ``` -------------------------------- ### GET /configuration/costaccounts/{id}/ Source: https://www.bookamat.com/dokumentation/api/v1/configuration Retrieves the details of a specific predefined tax account using its ID. ```APIDOC ## GET /configuration/costaccounts/{id}/ ### Description Retrieves the details of a specific predefined tax account using its ID. ### Method GET ### Endpoint /configuration/costaccounts/{id}/ ### Path Parameters - **id** (integer) - Required - The unique identifier of the cost account. ### Response #### Success Response (200) - **id** (integer) - Unique identifier for the cost account. - **name** (string) - Name of the cost account (max 40 characters). - **section** (string) - Section the cost account belongs to. - **group** (string) - Indicates if the account is for income ('1') or expenses ('2'). - **inventory** (boolean) - Indicates if the account is for assets. - **index_incometax** (array) - List of income tax declaration index strings. - **deductibility_tax_percent** (string) - Percentage of deductible VAT (decimal number, null if not applicable). - **deductibility_amount_percent** (string) - Percentage of deductible net amount (decimal number, null if not applicable). - **description** (string) - Description of the cost account. - **purchasetaxaccounts** (array) - List of associated predefined purchase tax accounts. - **id** (integer) - ID of the predefined purchase tax account. - **name** (string) - Name of the purchase tax account. - **group** (string) - User group for the purchase tax account ('Vorsteuerabzugsberechtigt' or 'Kleinunternehmer'). #### Response Example ```json { "id": 120, "name": "Einnahmen", "section": "Betriebseinnahmen", "group": "1", "inventory": false, "index_incometax": ["9040"], "deductibility_tax_percent": "100.00", "deductibility_amount_percent": "100.00", "description": "Alle Einnahmen im Inland ...", "purchasetaxaccounts": [ { "id": 211, "name": "Umsatzsteuer Inland", "group": "Vorsteuerabzugsberechtigt" } ] } ``` ``` -------------------------------- ### Add New Inventory Item (Response Body) Source: https://www.bookamat.com/dokumentation/api/v1/inventories Example of the response received after successfully adding a new inventory item. Includes calculated depreciation amounts and associated cost account details. ```json { "id": 7898, "title": "Drucker", "date_purchase": "2015-11-14", "date_commissioning": "2015-11-15", "date_disposal": null, "amount_after_tax": "200.00", "deductibility_percent": "100.00", "deductibility_amount": "200.00", "deductibility_declining_percent": null, "deductibility_switch_year": null, "deductibility_years": 1, "deductibility_type": { "id": 2, "name": "Sofortabschreibung" }, "costaccount": { "id": 2389, "name": "Geringwertige WG (Abschreibung)" }, "description": "", "seller": "", "amounts": [ { "year": 2015, "depreciation_percent": "100.00", "depreciation_amount": "200.00", "cumulated_depreciation": "200.00", "residual_value": "0.00" } ], "attachments": [], "create_date": "2015-11-16T17:00:00", "update_date": "2015-11-16T17:00:00" } ``` -------------------------------- ### Get Predefined Cost Accounts List - API Source: https://www.bookamat.com/dokumentation/api/v1/configuration This endpoint retrieves a list of all predefined cost accounts. It supports filtering by group (income/expense) and inventory status, as well as sorting by ID, name, or section. The response includes pagination details and a list of cost accounts, each with its associated sales tax accounts. ```http GET /configuration/costaccounts/ GET /configuration/costaccounts/?group=1 GET /configuration/costaccounts/?inventory=true GET /configuration/costaccounts/?ordering=id ``` -------------------------------- ### Get Inventory Item Details Source: https://www.bookamat.com/dokumentation/api/v1/inventories Retrieves the details of a single inventory item using its unique ID. The request uses a GET method on the item's detail URL. ```http GET /inventory/{id}/ ``` -------------------------------- ### Abrufen aller vordefinierten Umsatzsteuerkonten (API) Source: https://www.bookamat.com/dokumentation/api/v1/configuration Ruft eine Liste aller vordefinierten Umsatzsteuerkonten ab. Die Anfrage erfolgt über einen GET-Request an die Listen-URL. Nur aktivierte Konten sind für Buchungen relevant. ```HTTP GET /configuration/purchasetaxaccounts/ ``` -------------------------------- ### Add Payment Account with Specific Position (JSON) Source: https://www.bookamat.com/dokumentation/api/v1/basics Demonstrates adding a new payment account and how it affects the positions of existing accounts. The new account is inserted at the specified position, shifting subsequent accounts. ```json { "results": [ { "id": 1254, "name": "Bankkonto", "position": 0 }, { "id": 1255, "name": "Kreditkarte", "position": 1 }, ] } { "results": [ { "id": 1256, "name": "Paypal", "position": 0 }, { "id": 1254, "name": "Bankkonto", "position": 1 }, { "id": 1255, "name": "Kreditkarte", "position": 2 }, ] } ``` -------------------------------- ### URL Structure Source: https://www.bookamat.com/dokumentation/api/v1/basics All URLs require a prefix: `https://www.bookamat.com/api////`. Query parameters are appended as a query string. Detail URLs are typically the list URL plus the resource ID. ```APIDOC ## URLs ### Prefixes Every URL mentioned in this documentation must be prefixed with **https://www.bookamat.com/api/ ///**. For example, if the documentation shows `/bookings/`, the full URL for accessing the **AT 2015** package for API version **v1** is: ``` https://www.bookamat.com/api/v1/at/2015/bookings/ ``` ### Query Parameters Parameters (e.g., for sorting or filtering lists) are appended to the URL as a query string. ``` https://www.bookamat.com/api/v1/at/2015/bookings/?ordering=id&group=1 ``` ### List/Detail Unless otherwise specified, the detail URL for a resource is the same as the list URL, with the ID appended. List of payment method accounts: ``` /preferences/bankaccounts/ ``` Single payment method account: ``` /preferences/bankaccounts/{id}/ ``` POST requests must use the list URL. PATCH/PUT and DELETE requests must use the detail URL. ```