### Example File Response Formats (JSON, XML, Excel) Source: https://docs.billit.be/docs/get-files-related-to-sales-invoices Demonstrates the structure of the response body when retrieving files of different types using the Billit.be API. The 'FileContent' field contains the file data encoded in Base64. ```JSON { "FileID": "57eade47-f402-4605-849b-58c223c6b970", "FileName": "140532-206676-9688ab12-2c34-437c-808e-ee279999z99.xml_1.pdf", "MimeType": "application/pdf", "FileContent": "JVBERi0xLjUKJb662+4KOCAwIG9i................UgL0ltYWdlL1dpZHRoIDUxMi9IZ" } ``` ```JSON { "FileID": "57eade47-f402-4605-849b-58c223c6b999", "FileName": "140532-206676-9688ab12-2c34-437c-808e-ee2793579999.xml", "MimeType": "text/xml", "FileContent": "JVBERi0xLjUKJb662+4KOCAwIG9i................UgL0ltYWdlL1dpZHRoIDUxMi9IZ" } ``` ```JSON { "FileID": "57eade47-f402-4605-849b-58c223c9zb999", "FileName": "Test Excel 1.xlsx", "MimeType": "application/vnd.ms-excel", "FileContent": "JVBERi0xLjUKJb662+4KOCAwIG9i................UgL0ltYWdlL1dpZHRoIDUxMi9IZ" } ``` -------------------------------- ### UBL Invoice XML Structure Example Source: https://docs.billit.be/docs/get-files-peppol-inbox This XML snippet demonstrates the structure of a UBL invoice as received by Billit. It includes the Standard Business Document header for Peppol routing and the main invoice elements, along with an example of an attached PDF document. ```xml 1.0 0208:0759529999 9925:BE0437295202 urn:oasis:names:specification:ubl:schema:xsd:Invoice-2 2.1 f59bf651-2024-47b6-9a66-9476ad2d0a1c Invoice 2025-04-09T15:21:20.5099272+02:00 DOCUMENTID urn:oasis:names:specification:ubl:schema:xsd:Invoice-2::Invoice##urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0::2.1 busdox-docid-qns PROCESSID urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 cenbii-procid-ubl COUNTRY_C1 BE urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 QS-099 2025-04-09 2025-05-30 380 EUR QS-099 BE0759529999_850220_QS-099.pdf JVBERi0xvRmlsdGVyIC9GbGF0Z.............................FT0YK 0759529999 0759529999 TestCustomer Teststraat 31 merchtem 1785 BE BE0759529999 VAT TestCustomer 0759529999 npnwbrabant +32479991999 user@billit.eu BE0437295999 BE0437295999 TestSupplier Oktrooiplein 1 301 Ghent ``` -------------------------------- ### Allowance and Charge Header JSON Example Source: https://docs.billit.be/docs/allowances-and-charges-advanced This JSON example illustrates an invoice with both an allowance and a charge applied at the header level, along with multi-VAT percentages for line items. It includes order details, customer information, and addresses. ```json { "OrderType": "Invoice", "OrderDirection": "Income", "OrderNumber": "QS-AllChv2_11", "OrderDate": "2025-11-05", "OrderTitle": "kost lijn, kost+discount header multi vat", "Reference": "45lrv17z7784", "ExpiryDate": "2025-11-30", "Customer": { "Name": "Billit", "VATNumber": "BE05638469442", "PartyType": "Customer", "Addresses": [ { "AddressType": "InvoiceAddress", ``` -------------------------------- ### Retrieve Order PDF and Attachments (JSON Example) Source: https://docs.billit.be/docs/get-files-related-to-sales-invoices This snippet demonstrates the JSON structure for retrieving an Order PDF and associated attachments. It includes the main invoice PDF and optional additional attachments, such as JSON files used for posting invoices or credit notes. The FileID and FileName are provided for each. ```json { "OrderPDF": { "FileID": "db40c68c-2ff2-4989-b7d9-6baa1aedff1c", "FileName": "Invoice_QS-X014_VILBOXBV.pdf" }, "Attachments": [ { "FileID": "130fd171-72ff-4375-a4ce-1c3a4ac3c61c", "FileName": "QS-X014__9_09_2025 8_46_42.json" } ] } ``` ```json { "OrderPDF": { "FileID": "5b78345f-a107-4a4e-bf5d-293585a49199", "FileName": "Invoice_001t038_XYZBV.pdf" }, "Attachments": [ { "FileID": "01740d1f-5aef-4765-a3ad-dbef1e199a6f", "FileName": "test attachment2.pdf" }, { "FileID": "c1178d8a-f3d2-452b-a339-c6a67b7bbf99", "FileName": "test attachment3.pdf" }, { "FileID": "130fd171-72ff-4375-a4ce-1c3a4ac3c61c", "FileName": "QS-X014__9_09_2025 8_46_42.json" } ] } ``` ```json { "OrderPDF": { "FileID": "75b84e87-acdc-4039-aac1-eebb8184a492", "FileName": "QS_001_SalesInvoice.pdf" }, "Attachments": [ { "FileID": "c2d6fd1a-2bfc-4031-b03c-5c2ef7b68168", "FileName": "SampleAttachment2.xlsx" }, { "FileID": "8c060fb4-e9a3-4ced-97b1-00a9b9feddfd", "FileName": "QS-003PDFAttach8__9_05_2025 16_17_25.json" } ] } ``` -------------------------------- ### Get List of Incoming Invoices with OData Filtering Source: https://docs.billit.be/docs/get-list-of-incoming-invoices Retrieves a filtered list of incoming invoices and credit notes using OData query parameters. Examples include filtering by OrderType, OrderDirection, and LastModified date. ```APIDOC ## GET /v1/orders?$filter=... ### Description Retrieves a filtered list of sales and cost/expense invoices and credit notes using OData query parameters. ### Method GET ### Endpoint /v1/orders?$filter=... ### Parameters #### Query Parameters - **$filter** (string) - Required - OData filter expression. Examples: - `OrderType+eq+'Invoice'+and+OrderDirection+eq+'Cost'` - `OrderType+eq+'Invoice'+and+OrderDirection+eq+'Cost'+and+LastModified+ge+DateTime'2025-04-01'` ### Request Example ```json { "example": "GET /v1/orders?$filter=OrderType+eq+'Invoice'+and+OrderDirection+eq+'Cost'" } ``` ### Response #### Success Response (200) - **Items** (array) - A list of filtered invoice or credit note objects. - **OrderID** (integer) - The unique Billit ID of the document. - **CompanyID** (integer) - The Billit ID of the company. - **OrderPDF** (object) - Contains the FileID of the OrderPDF. - **FileID** (string) - The Billit ID of the linked file. - **OrderNumber** (string) - The invoice or credit note number from the supplier. #### Response Example ```json { "Items": [ { "OrderID": 1077603, "CompanyID": 574991, "OrderPDF": { "FileID": "28acb9ee-d0b1-4ee9-8a9d-2317712a9a11" }, "OrderNumber": "QS-Contact2" } ] } ``` ``` -------------------------------- ### Install Curl on Windows Source: https://docs.billit.be/docs/curl Instructions for installing and configuring Curl on Windows systems, covering built-in options, Git for Windows, and manual downloads. It also explains how to add Curl to the system's PATH environment variable. ```text C:\Program Files\Git\mingw64\bin\ ``` -------------------------------- ### Billit Data Structure Example Source: https://docs.billit.be/docs/allowances-and-charges-advanced This JSON snippet demonstrates the structure for address information and order lines within the Billit system. It includes details for billing and delivery addresses, as well as individual order line items with quantity, pricing, description, and VAT information. ```json { "Name": "Billit", "Street": "Oktrooiplein", "StreetNumber": "1", "City": "Ghent", "Zipcode": "9000", "Phone": "099991877", "CountryCode": "BE" }, { "AddressType": "DeliveryAddress", "Name": "Vilbox", "Street": "Oktrooiplein", "StreetNumber": "1b", "City": "Ghent", "CountryCode": "BE" } ] }, "OrderLines": [ { "Quantity": 5, "UnitPriceExcl": 10.00, "Reference": "915025", "Description": "Box of cookies", "VATPercentage": 6 }, { "Quantity": 1, "UnitPriceExcl": 1.69, "Description": "Fuel surcharge", "VATPercentage": 21, "AllowanceChargeIndicator" : true }, { "Quantity": 1, "UnitPriceExcl": -1.61, "Description": "Globaldiscount", "VATPercentage": 6, "AllowanceChargeIndicator" : false } ] } ``` -------------------------------- ### Get Order and Attachments Information (JSON) Source: https://docs.billit.be/docs/get-files This JSON structure represents the metadata for an order, including the primary OrderPDF and a list of associated attachments. The attachments can vary, including UBL/XML, PDFs, and Excel files, each with its own FileID and FileName. This serves as an example of the data returned when querying file references. ```json { "OrderID": 1194146, "CompanyID": 588708, "OrderPDF": { "FileID": "2b5d8f7b-dd7a-4ece-adb3-d3ec7d9ff999", "FileName": "162121-186660-46bfc55d-be37-4d77-b5fc-578a782c9f999.xml_1.pdf" }, "Attachments": { "FileID": "b049d8eb-9330-4097-be9e-c8a999f9cee9", "FileName": "162121-186660-46bfc55d-be37-4d77-b5fc-999a999c96f59.xml" } ], "OrderNumber": "QS-244SC" } ``` ```json { "OrderID": 1555985, "CompanyID": 574991, "OrderPDF": { "FileID": "57eade47-f402-4605-849b-58c223c6b970", "FileName": "140532-206676-9688ab12-2c34-437c-808e-ee2793571c66_1.pdf" }, "Attachments": [ { "FileID": "2690f5a8-1b49-43d1-a51d-62b8c4d08c9e", "FileName": "test attachment.pdf" }, { "FileID": "1ab3b994-4883-417b-9df9-a5f2c50807fd", "FileName": "test attachment2.pdf" }, { "FileID": "4163d6f0-831f-42cd-8b3d-5126f9d9fc94", "FileName": "test attachment3.pdf" }, { "FileID": "943f4ea9-29ed-45e3-886c-a8a1ec108e10", "FileName": "140532-206676-9688ab12-2c34-437c-808e-ee2793571c66.xml" }, { "FileID": "a311f231-d818-4088-b603-ffa590388b5a", "FileName": "Test Excel 1.xlsx" } ], "OrderNumber": "001t017" } ``` -------------------------------- ### Get Peppol Inbox List Example (JSON) Source: https://docs.billit.be/docs/get-the-inbox This JSON snippet demonstrates the structure of the response when retrieving the Peppol inbox list. It includes details for multiple incoming IMR files, such as sender and receiver Peppol IDs, document type, and creation date. ```json { "InboxItems": [ { "InboxItemID": 69873, "SenderPeppolID": "9925:BE0759529202", "PeppolDocumentType": "IMR", "ReceiverPeppolID": "0208:0437295202", "ReceiverCompanyID": "BE0437295202", "CreationDate": "2025-04-09T09:02:10.0168981", "PeppolFileID": "cc41ebf6-974c-4f32-8ef2-04d78836d999" }, { "InboxItemID": 69886, "SenderPeppolID": "9925:BE0759529202", "PeppolDocumentType": "IMR", "ReceiverPeppolID": "0208:0437295202", "ReceiverCompanyID": "BE0437295202", "CreationDate": "2025-04-09T09:03:09.9704004", "PeppolFileID": "2ab35770-7f44-43be-8fc8-ea3c724e7999" }, { "InboxItemID": 69887, "SenderPeppolID": "9925:BE0759529202", "PeppolDocumentType": "IMR", "ReceiverPeppolID": "0208:0437295202", "ReceiverCompanyID": "BE0437295202", "CreationDate": "2025-04-09T09:03:09.9546929", "PeppolFileID": "6814ff29-ae4c-47a0-a9b6-478da2ee3999" }, { "InboxItemID": 69888, "SenderPeppolID": "9925:BE0759529202", "PeppolDocumentType": "IMR", "ReceiverPeppolID": "0208:0437295202", "ReceiverCompanyID": "BE0437295202", "CreationDate": "2025-04-09T09:03:41.0017427", "PeppolFileID": "c4be227d-6415-44ed-bf13-048bfd95b999" } ] } ``` -------------------------------- ### Requesting OAuth Access Source: https://docs.billit.be/docs/how-do-i-get-started-with-oauth Instructions on how to request OAuth client credentials and initiate the user consent flow. ```APIDOC ## Requesting OAuth Access ### Description To gain access to a user's Billit profile and companies, you need to initiate the OAuth login process. This allows users to grant your application the necessary permissions. ### Method Email Request & Redirect to Billit ### Endpoint `mailto:support@billit.eu` for client request; Billit Logon Page for user redirect. ### Parameters #### Request Parameters (Email to support@billit.eu) - **Billit Party ID** (string) - Required - The Billit Party ID of the company. - **Redirect URI** (URL) - Required - The URL to which the user will be redirected after login. - **Application Name** (string) - Required - The name of your application. - **Environment** (string) - Required - 'Sandbox' or 'Production'. #### User Redirect Parameters - **client_id** (string) - Required - Your OAuth client ID. - **redirect_uri** (URL) - Required - The redirect URI provided during client request. - **state** (string) - Optional - A unique identifier to prevent CSRF attacks and track requests. ### Request Example **Email to Billit Support:** ``` To: support@billit.eu Subject: OAuth Client Request Billit Party ID: [YOUR_PARTY_ID] Redirect URI: [YOUR_REDIRECT_URI] Application Name: [YOUR_APPLICATION_NAME] Environment: [SANDBOX/PRODUCTION] ``` **User Redirect URL:** ```http https https://my.sandbox.billit.be/Account/Logon?client_id={CLIENTID}&redirect_uri={REDIRECTURI}&state={STATE} ``` ### Response Example **Billit Feedback (Email):** ``` clientID: [YOUR_CLIENT_ID] clientSecret: [YOUR_CLIENT_SECRET] ``` **User Redirected to Redirect URI:** - If successful, Billit redirects the user to the provided `redirect_uri` with an `authorization_code` and `state` (if provided). - If unsuccessful, Billit redirects the user to the `redirect_uri` with an `error` parameter. ``` -------------------------------- ### Orderline Item Identification Examples (JSON) Source: https://docs.billit.be/docs/extra-fields-extend-content-with-extra-values-line Provides examples of how to specify item identification for orderlines, including GTIN (Global Trade Item Number) using StandardItemIdentification and Buyer's Item Identification using BuyersItemIdentification. These are typically used for product/article information. ```json "CustomFields" : { "InvoiceLine.Item.StandardItemIdentification.ID.Text": "8710400311140", "InvoiceLine.Item.StandardItemIdentification.ID.SchemeID": "0160" } ``` ```json "CustomFields" : { "InvoiceLine.Item.BuyersItemIdentification.ID.Text": "854565" } ``` -------------------------------- ### JSON Response for Retrieved File Source: https://docs.billit.be/docs/get-files-peppol-inbox This is an example of the JSON response received when successfully fetching a file. It includes the FileID, FileName, MimeType, and the FileContent encoded in Base64. The FileContent needs to be decoded to access the actual file data. ```JSON { "FileID": "b155ec2e-a74c-4972-928b-f87d6056fd9d", "FileName": "133003-460773-60472634-d626-4e8d-870e-7b2e171ad8eb.xml", "MimeType": "text/xml", "FileContent": "PD94bWwgdmVyc2lvbj ................ hbmRhcmRCdXNpbmVzc0RvY3VtZW50Pg==" } ``` -------------------------------- ### Basic Curl Command Syntax Source: https://docs.billit.be/docs/curl Illustrates the fundamental structure of a Curl command, showing how to include various options and specify the target URL. ```bash curl [options] [URL...] ``` -------------------------------- ### Billit Order Data Structure Example (JSON) Source: https://docs.billit.be/docs/get-information-about-one-invoicecreditnote This JSON snippet illustrates the structure of an order object returned by the Billit API. It includes essential details such as OrderID, CompanyID, PDF and attachment information, order number, customer and supplier metadata, dates, order lines, VAT groups, and payment status. Comments are included for clarity. ```json { "OrderID": 1194146, "CompanyID": 588708, "OrderPDF": { "FileID": "2b5d8f7b-dd7a-4ece-adb3-d3ec7d8ff781", "FileName": "162121-186660-46bfc55d-be37-4d77-b5fc-578a782c6f59.xml_1.pdf" }, "Attachments": [ { "FileID": "b049d8eb-9330-4097-be9e-c8a564f5cee6", "FileName": "162121-186660-46bfc55d-be37-4d77-b5fc-578a782c6f59.xml" } ], "OrderNumber": "QS-244SC", "Customer": { "PartyID": 588708, "Name": "Test Supplier", "Addresses": [ { "AddressType": "InvoiceAddress", "Street": "Teststraat", "StreetNumber": "1", "Box": "2", "Zipcode": "9000", "City": "Gent", "CountryCode": "BE" }, { "AddressType": "DeliveryAddress", "CountryCode": "BE" } ], "Street": "Teststraat", "StreetNumber": "1", "Box": "2", "Zipcode": "9000", "City": "Gent", "CountryCode": "BE", "IBAN": "BE26310086399929", "BIC": "BBRUBEBB", "Mobile": "+32479991999", "Phone": "+3224600999", "Email": "Tech@techcorp.dev", "Contact": "John Doe1", "ContactFirstName": "John", "ContactLastName": "Doe1", "VATNumber": "BE0446725877", "LastModified": "2025-04-25T09:21:48.993", "Created": "2025-04-01T09:34:20.563", "PartyType": "Customer", "VATLiable": true, "Language": "EN", "VentilationCode": "4", "CustomFields": [], "BankAccounts": [], "Users": [], "DefaultPaid": false, "DisplayName": "Sercu Microdata nv", "FinancialReductionDaysDefault": 8 } } ``` -------------------------------- ### Extracting Invoice Line Items from UBL XML Source: https://docs.billit.be/docs/get-files-peppol-inbox This example illustrates the structure for individual invoice lines within a UBL document, including item details, quantities, prices, and associated tax categories. This is essential for detailed billing analysis. ```xml 1 1.00000 10.00 Box of cookies S 6.00 VAT 10.00000 1 2 2.00000 7.50 Sticks S 21.00 VAT 3.75000 1 ``` -------------------------------- ### Retrieve Messages (UBL/IMR/MLR) (JSON Example) Source: https://docs.billit.be/docs/get-files-related-to-sales-invoices This snippet shows the JSON response for retrieving messages, which includes UBL files sent via networks, and IMR/MLR files. Each message object contains details like FileID, CreationDate, TransportType, Success status, Trials, Destination, and MessageDirection. ```json { "Messages": [ { "FileID": "845e4774-7d76-4d2c-a7de-e6d790cb57c6", "CreationDate": "2025-05-07T14:08:07.813", "TransportType": "Peppol", "Success": true, "Trials": 1, "Destination": "0208:0446725877", "MessageDirection": "Outgoing" }, { "Description": "AB: The document has been successfully received.", "FileID": "7ee8b70c-3dd7-423a-8269-79f8bc49e0c5", "CreationDate": "2025-05-07T14:09:54.203", "TransportType": "Peppol", "Success": true, "Trials": 0, "Destination": "0208:0446725877", "MessageDirection": "Incoming" }, { "Description": "PD: The document has been paid.", "FileID": "b39065a9-8c82-4beb-9c04-010435f4c5fa", "CreationDate": "2025-05-07T14:25:11.427", "TransportType": "Peppol", "Success": true, "Trials": 0, "Destination": "0208:0446725877", "MessageDirection": "Incoming" } ] } ``` -------------------------------- ### API Call with Bearer Token Source: https://docs.billit.be/docs/how-do-i-get-started-with-oauth This example shows how to make an API call to retrieve orders using an access token. The Authorization header must be set to 'Bearer {ACCESS_TOKEN}' to authenticate the request. The 'Accept' header is set to 'application/json' to specify the desired response format. ```http GET https://api.sandbox.billit.be/v1/orders HTTP/1.1 Authorization: Bearer {ACCESS_TOKEN} Accept: application/json ``` -------------------------------- ### Invoice Data Structure Example (XML) Source: https://docs.billit.be/docs/allowances-and-charges-advanced This snippet shows a fragment of an XML invoice, detailing delivery information, payment means, allowance charges, tax totals, monetary totals, and invoice lines. ```xml Vilbox 42 +++218/2135/58110+++ BE20734054285956 KREDBEBB false Global discount 2.00 S 21.00 VAT 2.58 50.00 3.00 S 6.00 VAT -2.00 -0.42 S 21.00 VAT 50.00 48.00 50.58 2.00 0 0 50.58 1 5.00000 50.00 915025 Box of cookies 915025 S 6.00 VAT 10.00000 1 ``` -------------------------------- ### Create Product using Billit API Source: https://docs.billit.be/docs/products This snippet demonstrates how to create one or multiple products using the Billit API. It requires a JSON payload containing product details such as Reference, Description, AmountExcl, VAT, Unit, GroupID, StockQuantity, MinimumBilledQuantity, and InternalInformation. The operation is performed via a POST request to the /v1/products endpoint. ```JSON { "Items": [ { "Reference": "Cleaning liquid", "Description": "Cleaning liquid extra info", "AmountExcl": 0.90000, "VAT": 21.00, "Unit": "NAR", "GroupID": 30279, "StockQuantity": 20.00, "MinimumBilledQuantity": 50.0000, "InternalInformation": "extra info" } ] } ``` -------------------------------- ### Get a Single File via API (GET /v1/files/FileID) Source: https://docs.billit.be/docs/get-files-related-to-sales-invoices This endpoint allows you to retrieve a single file by its unique FileID. The response includes the file's ID, name, MIME type, and its content encoded in Base64. For retrieving multiple files, multiple GET requests must be performed. ```HTTP GET /v1/files/FileID HTTP/1.1 Host: api.billit.be Authorization: Bearer YOUR_API_TOKEN ``` -------------------------------- ### JSON Example: AdditionalItemProperty for Weight and Intrastat Source: https://docs.billit.be/docs/extra-fields-extend-content-with-extra-values-line This JSON snippet demonstrates how to use AdditionalItemProperty to include weight and Intrastat codes for an item line. It's useful when specific Peppol fields are unavailable. ```json { "AdditionalItemPropertyWeight": "24 kg", "AdditionalItemPropertyIntrastatCode": "4527897" } ``` -------------------------------- ### Get Orders (GET /v1/orders) Source: https://docs.billit.be/docs/how-do-i-get-started-with-oauth Retrieves a list of orders. This endpoint requires an Authorization header with a valid Bearer token. ```APIDOC ## Get Orders ### Description This endpoint retrieves a list of orders. It requires an `Authorization` header containing a Bearer token. ### Method GET ### Endpoint `https://api.sandbox.billit.be/v1/orders` ### Headers - **Authorization** (string) - Required - Bearer token, e.g., `Bearer {ACCESS_TOKEN}` - **Accept** (string) - Required - Set to `application/json`. ### Request Example ```http GET https://api.sandbox.billit.be/v1/orders HTTP/1.1 Authorization: Bearer {ACCESS_TOKEN} Accept: application/json ``` ### Response #### Success Response (200) Returns a JSON object containing a list of orders. The exact structure depends on the API implementation. #### Response Example ```json { "orders": [ { "order_id": "123", "customer_name": "John Doe", "total_amount": "100.00" } // ... more orders ] } ``` ``` -------------------------------- ### Create Product Source: https://docs.billit.be/docs/products Allows for the creation of one or multiple products by sending a POST request with product details in the request body. Currently, there is an issue with the POST endpoint that is being addressed. ```APIDOC ## POST /v1/products ### Description Allows for the creation of one or multiple products by sending a POST request with product details in the request body. Currently, there is an issue with the POST endpoint that is being addressed. ### Method POST ### Endpoint /v1/products ### Parameters #### Request Body - **Items** (array) - Required - An array of product objects to be created. - **Reference** (string) - Required - The reference name of the product. - **Description** (string) - Optional - A detailed description of the product. - **AmountExcl** (number) - Required - The amount excluding VAT. - **VAT** (number) - Required - The VAT percentage. - **Unit** (string) - Required - The unit of measurement for the product (e.g., 'NAR' for piece). - **GroupID** (integer) - Optional - The ID of the group the product belongs to. - **StockQuantity** (number) - Optional - The current stock quantity. - **MinimumBilledQuantity** (number) - Optional - The minimum quantity that can be billed. - **InternalInformation** (string) - Optional - Internal notes or information about the product. ### Request Example ```json { "Items": [ { "Reference": "Cleaning liquid", "Description": "Cleaning liquid extra info", "AmountExcl": 0.90000, "VAT": 21.00, "Unit": "NAR", "GroupID": 30279, "StockQuantity": 20.00, "MinimumBilledQuantity": 50.0000, "InternalInformation": "extra info" } ] } ``` ### Response #### Success Response (200) - **Status** (string) - Indicates the success of the operation. - **Message** (string) - A message detailing the result of the operation. #### Response Example ```json { "Status": "Success", "Message": "Products created successfully" } ``` ``` -------------------------------- ### GET /v1/webhooks/{webhook_id} Source: https://docs.billit.be/docs/api-features Retrieve details of a specific webhook by its ID. This allows you to get the configuration and secret for a particular webhook. ```APIDOC ## GET /v1/webhooks/{webhook_id} ### Description Retrieves details of a specific webhook by its ID. This allows you to get the configuration and secret for a particular webhook. ### Method GET ### Endpoint /v1/webhooks/{webhook_id} ### Parameters #### Path Parameters - **webhook_id** (string) - Required - The unique identifier of the webhook to retrieve. ### Request Example ```http GET /v1/webhooks/wh_12345 HTTP/1.1 Host: api.billit.be Authorization: Bearer YOUR_API_KEY ``` ### Response #### Success Response (200) - **id** (string) - The unique identifier of the webhook. - **url** (string) - The URL to which the webhook events will be sent. - **secret** (string) - The secret used for signing webhook payloads. - **entity_types** (array of strings) - The types of entities the webhook is configured to listen to. - **update_types** (array of strings) - The types of updates the webhook is configured to listen to. - **created_at** (string) - The timestamp when the webhook was created. #### Response Example ```json { "id": "wh_12345", "url": "https://your-integration.com/webhook-handler", "secret": "your-webhook-secret", "entity_types": ["Order", "Message"], "update_types": ["I", "U"], "created_at": "2023-10-27T10:00:00Z" } ``` ``` -------------------------------- ### Retrieve Incoming Invoices with OData Filtering (GET /v1/orders?$filter) Source: https://docs.billit.be/docs/get-list-of-incoming-invoices This snippet demonstrates how to use OData filtering with the GET /v1/orders endpoint. It specifically shows filtering for invoices where OrderType is 'Invoice' and OrderDirection is 'Cost'. ```HTTP GET /v1/orders?$filter=OrderType+eq+'Invoice'+and+OrderDirection+eq+'Cost' ```