easybill_client/generated/async/docs/DocumentPosition.md
claudi caacb339dd Add unit tests for authentication and webhook parsing
- Implement tests for basic and bearer authentication headers in `test_auth.py`.
- Create tests for the `EasybillWebhookParser` in `test_webhooks.py`, covering JSON and form-encoded payloads, as well as a generic parse and acknowledgement method.
2026-04-17 10:20:12 +02:00

56 lines
3.4 KiB
Markdown

# DocumentPosition
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**number** | **str** | | [optional] [default to 'null']
**description** | **str** | | [optional] [default to 'null']
**document_note** | **str** | This field can be used in the document text areas with the liquid placeholder {{document.item_notes}}. Every note is only displayed once for every kind of product. This is useful if you want to add something like an instruction. | [optional]
**quantity** | **float** | | [optional] [default to 1.0]
**quantity_str** | **str** | Use quantity_str if you want to set a quantity like: 1:30 h or 3x5 m. quantity_str overwrites quantity. | [optional]
**unit** | **str** | | [optional] [default to 'null']
**type** | **str** | | [optional] [default to 'POSITION']
**position** | **int** | Automatic by default (first item: 1, second item: 2, ...) | [optional]
**single_price_net** | **float** | Price in cents, despite being of type float (e.g. 150 = 1.50€, but also 150.0 = 1.50€) | [optional]
**single_price_gross** | **float** | Price in cents, despite being of type float (e.g. 150 = 1.50€, but also 150.0 = 1.50€) | [optional]
**vat_percent** | **float** | | [optional] [default to 0.0]
**discount** | **float** | | [optional]
**discount_type** | **str** | | [optional] [default to null]
**position_id** | **int** | If set, values are copied from the referenced position | [optional]
**total_price_net** | **float** | Price in cents, despite being of type float (e.g. 150 = 1.50€, but also 150.0 = 1.50€) | [optional] [readonly]
**total_price_gross** | **float** | Price in cents, despite being of type float (e.g. 150 = 1.50€, but also 150.0 = 1.50€) | [optional] [readonly]
**total_vat** | **float** | | [optional] [readonly]
**serial_number_id** | **str** | | [optional] [readonly]
**serial_number** | **str** | | [optional] [readonly]
**booking_account** | **str** | | [optional] [default to 'null']
**export_cost_1** | **str** | | [optional] [default to 'null']
**export_cost_2** | **str** | | [optional] [default to 'null']
**cost_price_net** | **float** | Price in cents, despite being of type float (e.g. 150 = 1.50€, but also 150.0 = 1.50€) | [optional]
**cost_price_total** | **float** | Price in cents, despite being of type float (e.g. 150 = 1.50€, but also 150.0 = 1.50€) | [optional] [readonly]
**cost_price_charge** | **float** | | [optional] [readonly]
**cost_price_charge_type** | **str** | | [optional] [readonly]
**item_type** | **str** | | [optional] [default to 'UNDEFINED']
**id** | **int** | | [optional] [readonly]
## Example
```python
from easybill_generated_async.models.document_position import DocumentPosition
# TODO update the JSON string below
json = "{}"
# create an instance of DocumentPosition from a JSON string
document_position_instance = DocumentPosition.from_json(json)
# print the JSON string representation of the object
print(DocumentPosition.to_json())
# convert the object into a dict
document_position_dict = document_position_instance.to_dict()
# create an instance of DocumentPosition from a dict
document_position_from_dict = DocumentPosition.from_dict(document_position_dict)
```
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)