### GET /guides.json Source: https://docs.invoicexpress.com/guides.md Returns a list of guides (Shippings, Transports and Devolutions). This endpoint is used to retrieve all guide documents. ```APIDOC ## GET /guides.json ### Description Returns a list of guides (Shippings, Transports and Devolutions). This endpoint is used to retrieve all guide documents. ### Method GET ### Endpoint /guides.json ``` -------------------------------- ### GET /taxes.json Source: https://docs.invoicexpress.com/index.html.md Returns all your taxes. ```APIDOC ## [GET] /taxes.json ### Description Returns all your taxes. ### Method GET ### Endpoint /taxes.json ``` -------------------------------- ### GET /{guides-type}/{document-id}.json Source: https://docs.invoicexpress.com/guides.md Retrieves a specific guide document by its ID and type. This endpoint is used to fetch details of a shipping, transport, or devolution. ```APIDOC ## GET /{guides-type}/{document-id}.json ### Description Retrieves a specific guide document by its ID and type. This endpoint is used to fetch details of a shipping, transport, or devolution. ### Method GET ### Endpoint /{guides-type}/{document-id}.json ### Parameters #### Path Parameters - **guides-type** (string) - Required - The type of guide: shipping, transport, or devolution. - **document-id** (integer) - Required - The ID of the guide document to retrieve. ``` -------------------------------- ### GET /clients.json Source: https://docs.invoicexpress.com/clients.md Returns a list of all your clients. ```APIDOC ## GET /clients.json ### Description Returns a list of all your clients. ### Method GET ### Endpoint /clients.json ``` -------------------------------- ### GET /sequences.json Source: https://docs.invoicexpress.com/index.html.md Returns all your sequences. ```APIDOC ## [GET] /sequences.json ### Description Returns all your sequences. ### Method GET ### Endpoint /sequences.json ``` -------------------------------- ### GET /items.json Source: https://docs.invoicexpress.com/index.html.md Returns a list of all your items. ```APIDOC ## GET /items.json ### Description Returns a list of all your items. ### Method GET ### Endpoint /items.json ``` -------------------------------- ### Shipping Guide Fields Source: https://docs.invoicexpress.com/guides/updateguide.md Describes the request and response fields for the shipping guide resource, including item details, addresses, and tax information. ```APIDOC ## Shipping Guide Fields ### Description This section documents the fields used when creating or retrieving a shipping guide. The wrapper key is "shipping" for the singular guide type. ### Request Fields - `shipping.items.quantity` (string, required) - Example: "5" - `shipping.items.unit` (string) - Restricted to a fixed set of unit values. Example: "service" - `shipping.items.discount` (string) - Example: "50" - `shipping.items.tax` (object) - `shipping.tax_exemption_reason` (string) - Validated at 210 characters. Example: "M00" - `shipping.load_site` (string) - No enforced character limit. Example: "Lisbon, Portugal" - `shipping.delivery_site` (string) - No enforced character limit. Example: "Madrid, Spain" ### Response Fields (200 OK, application/json) - `shipping` (object) - Wrapper key matches the singular of the requested guide type. - `shipping.id` (integer) - Example: 541797 - `shipping.status` (string) - Example: "final" - `shipping.archived` (boolean) - `shipping.type` (string) - Example: "Shipping" - `shipping.sequence_number` (string) - Example: "1/D" - `shipping.inverted_sequence_number` (string) - Example: "D/1" - `shipping.atcud` (string) - Example: "ABCD1234-1" - `shipping.date` (string) - Example: "13/07/2017" - `shipping.due_date` (string) - Format: dd/mm/yyyy. Example: "27/07/2026" - `shipping.reference` (string, null) - `shipping.observations` (string, null) - No enforced character limit. - `shipping.retention` (string, null) - `shipping.loaded_at` (string) - Format: dd/mm/yyyy HH:mm:ss. Example: "27/07/2026 23:00:00" - `shipping.license_plate` (string, null) - Example: "11-AA-22" - `shipping.permalink` (string) - Example: "https://web.invoicexpress.com/documents/541797d75bbee48911934cbd4a4294946a324295f52b08" - `shipping.saft_hash` (string) - No enforced character limit. Example: "vaDf" - `shipping.sum` (number) - Example: 1 - `shipping.discount` (number) - `shipping.before_taxes` (number) - Example: 1 - `shipping.taxes` (number) - Example: 0.07 - `shipping.total` (number) - Example: 1.07 - `shipping.currency` (string) - Example: "Euro" - `shipping.address_from` (object) - `shipping.address_from.country` (string) - Example: "Portugal" - `shipping.address_from.postal_code` (string) - Example: "1050-083" - `shipping.address_from.detail` (string) - Example: "Avenida Duque D'Avila, 46 - 3ºA" - `shipping.address_from.city` (string) - Example: "Lisboa" - `shipping.address_to` (object) - `shipping.client` (object) - `shipping.client.name` (string) - Example: "John" - `shipping.client.country` (string) - Example: "Portugal" - `shipping.items` (array) - `shipping.items.name` (string) - Maximum 60 characters. Example: "iPhone" - `shipping.items.description` (string, null) - Maximum 200 characters and 20 lines. - `shipping.items.unit_price` (string) - Example: "1.0" - `shipping.items.unit` (string, null) - Restricted to a fixed set of unit values. Example: "service" - `shipping.items.quantity` (string) - Example: "1.0" - `shipping.items.tax` (object) - `shipping.items.tax.value` (number) - Example: 7 - `shipping.items.subtotal` (number) - Example: 1 - `shipping.items.tax_amount` (number) - Example: 0.07 - `shipping.items.discount_amount` (number) - `shipping.sequence_id` (integer, null) - Example: 12345 - `shipping.tax_exemption` (string) - Example: "M01" - `shipping.at_doc_code_id` (string, null) - Read-only. Example: "999" ``` -------------------------------- ### POST /{guides-type}.json Source: https://docs.invoicexpress.com/guides.md Creates a new shipping, transport, or devolution document. The guides-type parameter specifies the type of guide to create. ```APIDOC ## POST /{guides-type}.json ### Description Creates a new shipping, transport, or devolution document. The guides-type parameter specifies the type of guide to create. ### Method POST ### Endpoint /{guides-type}.json ### Parameters #### Path Parameters - **guides-type** (string) - Required - The type of guide: shipping, transport, or devolution. ``` -------------------------------- ### GET /clients/find-by-code.json Source: https://docs.invoicexpress.com/clients.md Returns a specific client. ```APIDOC ## GET /clients/find-by-code.json ### Description Returns a specific client. ### Method GET ### Endpoint /clients/find-by-code.json ``` -------------------------------- ### GET /invoices.json Source: https://docs.invoicexpress.com/index.html.md Returns a list of invoices. ```APIDOC ## GET /invoices.json ### Description Returns a list of invoices. ### Method GET ### Endpoint /invoices.json ``` -------------------------------- ### GET /api/accounts/{account-id}/get.json Source: https://docs.invoicexpress.com/accounts.md Gets information about a specific account. ```APIDOC ## GET /api/accounts/{account-id}/get.json ### Description Gets information about a specific account. ### Method GET ### Endpoint /api/accounts/{account-id}/get.json ### Parameters #### Path Parameters - **account-id** (string) - Required - The ID of the account to retrieve. ``` -------------------------------- ### GET /api/export_saft.json Source: https://docs.invoicexpress.com/saf-t/export_saft.md Initiates the export of a SAF-T file for the specified period. The response may return a download URL, a message indicating the generation has started, or an error message. ```APIDOC ## GET /api/export_saft.json ### Description Initiates the export of a SAF-T file for the specified period. The response may return a download URL, a message indicating the generation has started, or an error message. ### Method GET ### Endpoint /api/export_saft.json ### Parameters #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" - **Saft Params** (object) - Required - Click to expand options. ### Response #### Success Response (200) - **Url** (string) - Link to download your SAF-T file. Absent when there are no documents to export in the selected period — see message instead. Example: "https://some.url" - **message** (string) - Present instead of Url when there are no documents to export in the selected period. Example: "There aren't any documents to export on the selected period." #### Response Example { "Url": "https://some.url" } #### Success Response (202) - **message** (string) - Example: "The SAF-T file generation was started. Please keep requesting until you get back the url." #### Response Example { "message": "The SAF-T file generation was started. Please keep requesting until you get back the url." } #### Error Response (401) - **errors** (array) - List of errors. - **errors.error** (string) - Example: "Authentication Error" #### Response Example { "errors": [ { "error": "Authentication Error" } ] } #### Error Response (422) - **message** (string) - Example: "There aren't any documents to export on the selected period." #### Response Example { "message": "There aren't any documents to export on the selected period." } #### Error Response (500) - **message** (string) - Example: "Error generating SAF-T. Please try again." #### Response Example { "message": "Error generating SAF-T. Please try again." } ``` -------------------------------- ### GET /clients/find-by-name.json Source: https://docs.invoicexpress.com/clients.md Returns a specific client. ```APIDOC ## GET /clients/find-by-name.json ### Description Returns a specific client. ### Method GET ### Endpoint /clients/find-by-name.json ``` -------------------------------- ### PUT /{guides-type}/{document-id}/change-state.json Source: https://docs.invoicexpress.com/guides.md Changes the state of guide documents (shippings, transports, devolutions). The allowed state transitions are: draft to final (event: finalized), draft to deleted (event: deleted), and final to canceled (event: canceled). ```APIDOC ## PUT /{guides-type}/{document-id}/change-state.json ### Description Changes the state of guide documents (shippings, transports, devolutions). The allowed state transitions are: draft to final (event: finalized), draft to deleted (event: deleted), and final to canceled (event: canceled). ### Method PUT ### Endpoint /{guides-type}/{document-id}/change-state.json ### Parameters #### Path Parameters - **guides-type** (string) - Required - The type of guide: shipping, transport, or devolution. - **document-id** (integer) - Required - The ID of the guide document to change state. ### State Transitions | From | To | Event | | :--- | :--- | :--- | | draft | final | finalized | | draft | deleted | deleted | | final | canceled | canceled | ``` -------------------------------- ### GET /estimates.json Source: https://docs.invoicexpress.com/estimates/listestimates.md Returns a list of estimates (Quotes, Proformas, Fees Notes). Requires API key authentication. ```APIDOC ## GET /estimates.json ### Description Returns a list of estimates (Quotes, Proformas, Fees Notes). ### Method GET ### Endpoint /estimates.json ### Parameters #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" - **Query Parameters** (object) - Optional - Click to expand options. ### Response #### Success Response (200) - **estimates** (array) - List of estimates. - **estimates.id** (integer) - Example: 541791 - **estimates.status** (string) - Example: "final" - **estimates.archived** (boolean) - Indicates if archived. - **estimates.type** (string) - Example: "Quote" - **estimates.sequence_number** (string) - Example: "1/A" - **estimates.inverted_sequence_number** (string) - Example: "A/1" - **estimates.atcud** (string) - Example: "ABCD1234-1" - **estimates.date** (string) - Example: "12/06/2017" - **estimates.due_date** (string) - Example: "12/06/2017" - **estimates.reference** (string,null) - Example: "foo" - **estimates.observations** (string,null) - No enforced character limit (text column). Example: "foo" - **estimates.retention** (string,null) - Retention value. - **estimates.permalink** (string) - Example: "https://web.invoicexpress.com/documents/541791f16ae45a73b703c684a221ef198c10020f3d56a1" - **estimates.saft_hash** (string) - Server-generated. No enforced character limit (text column). Example: "NfTN" - **estimates.sum** (number) - Example: 10 - **estimates.discount** (number) - Discount amount. - **estimates.before_taxes** (number) - Example: 10 - **estimates.taxes** (number) - Example: 2.3 - **estimates.total** (number) - Example: 12.3 - **estimates.currency** (string) - Example: "Euro" - **estimates.sequence_id** (integer,null) - Example: 12345 - **estimates.tax_exemption** (string) - Example: "M01" - **estimates.client** (object) - Client details. - **estimates.client.name** (string) - Example: "John" - **estimates.client.code** (string,null) - Example: "CLI-001" - **estimates.client.email** (string,null) - Example: "john@example.com" - **estimates.client.address** (string,null) - Example: "Avenida da República, Lisboa" - **estimates.client.postal_code** (string,null) - Example: "1050-555" - **estimates.client.city** (string,null) - Example: "Lisboa" - **estimates.client.fiscal_id** (string,null) - Example: "508025338" - **estimates.client.country** (string) - Example: "Portugal" - **estimates.items** (array) - List of items. - **estimates.items.description** (string,null) - Example: "foo" - **estimates.items.unit_price** (string) - Example: "10.0" - **estimates.items.unit** (string,null) - Example: "foo" - **estimates.items.quantity** (string) - Example: "1.0" - **estimates.items.subtotal** (number) - Example: 10 - **estimates.items.tax_amount** (number) - Example: 2.3 - **estimates.items.discount_amount** (number) - Discount amount. - **estimates.items.tax** (object) - Tax details. - **estimates.items.tax.name** (string,null) - Null when the line has no tax assigned. Example: "IVA23" - **estimates.items.tax.value** (number) - Example: 23 - **pagination** (object) - Pagination details. - **pagination.total_entries** (integer) - Example: 50 - **pagination.per_page** (integer) - Example: 20 - **pagination.current_page** (integer) - Example: 1 - **pagination.total_pages** (integer) - Example: 3 #### Response Example { "estimates": [ { "id": 541791, "status": "final", "archived": false, "type": "Quote", "sequence_number": "1/A", "inverted_sequence_number": "A/1", "atcud": "ABCD1234-1", "date": "12/06/2017", "due_date": "12/06/2017", "reference": "foo", "observations": "foo", "retention": null, "permalink": "https://web.invoicexpress.com/documents/541791f16ae45a73b703c684a221ef198c10020f3d56a1", "saft_hash": "NfTN", "sum": 10, "discount": 0, "before_taxes": 10, "taxes": 2.3, "total": 12.3, "currency": "Euro", "sequence_id": 12345, "tax_exemption": "M01", "client": { "name": "John", "code": "CLI-001", "email": "john@example.com", "address": "Avenida da República, Lisboa", "postal_code": "1050-555", "city": "Lisboa", "fiscal_id": "508025338", "country": "Portugal" }, "items": [ { "description": "foo", "unit_price": "10.0", "unit": "foo", "quantity": "1.0", "subtotal": 10, "tax_amount": 2.3, "discount_amount": 0, "tax": { "name": "IVA23", "value": 23 } } ] } ], "pagination": { "total_entries": 50, "per_page": 20, "current_page": 1, "total_pages": 3 } } #### Error Response (401) - **errors** (array) - List of errors. - **errors.error** (string) - Example: "Authentication Error" #### Error Response Example { "errors": [ { "error": "Authentication Error" } ] } ``` -------------------------------- ### PUT /{guides-type}/{document-id}/email-document.json Source: https://docs.invoicexpress.com/guides.md Sends a guide document by email. This endpoint is used to email a shipping, transport, or devolution document to a recipient. ```APIDOC ## PUT /{guides-type}/{document-id}/email-document.json ### Description Sends a guide document by email. This endpoint is used to email a shipping, transport, or devolution document to a recipient. ### Method PUT ### Endpoint /{guides-type}/{document-id}/email-document.json ### Parameters #### Path Parameters - **guides-type** (string) - Required - The type of guide: shipping, transport, or devolution. - **document-id** (integer) - Required - The ID of the guide document to send by email. ``` -------------------------------- ### GET /api/v3/clients/{client_id}/regularization.json Source: https://docs.invoicexpress.com/index.html.md Returns a list of all your client’s regularization. ```APIDOC ## GET /api/v3/clients/{client_id}/regularization.json ### Description Returns a list of all your client’s regularization. ### Method GET ### Endpoint /api/v3/clients/{client_id}/regularization.json ### Parameters #### Path Parameters - **client_id** (string) - Required - The ID of the client. ``` -------------------------------- ### GET /api/v3/clients/{client_id}/balance.json Source: https://docs.invoicexpress.com/index.html.md Returns the balance of a specific client. ```APIDOC ## GET /api/v3/clients/{client_id}/balance.json ### Description Returns the balance of a specific client. ### Method GET ### Endpoint /api/v3/clients/{client_id}/balance.json ### Parameters #### Path Parameters - **client_id** (string) - Required - The ID of the client. ``` -------------------------------- ### PUT /{guides-type}/{document-id}.json Source: https://docs.invoicexpress.com/guides.md Updates a shipping, transport, or devolution document. This endpoint allows modifying the details of an existing guide. ```APIDOC ## PUT /{guides-type}/{document-id}.json ### Description Updates a shipping, transport, or devolution document. This endpoint allows modifying the details of an existing guide. ### Method PUT ### Endpoint /{guides-type}/{document-id}.json ### Parameters #### Path Parameters - **guides-type** (string) - Required - The type of guide: shipping, transport, or devolution. - **document-id** (integer) - Required - The ID of the guide document to update. ``` -------------------------------- ### GET /clients/{client_id}.json Source: https://docs.invoicexpress.com/clients.md Returns a specific client. ```APIDOC ## GET /clients/{client_id}.json ### Description Returns a specific client. ### Method GET ### Endpoint /clients/{client_id}.json ### Parameters #### Path Parameters - **client_id** (integer) - Required - The ID of the client to retrieve. ``` -------------------------------- ### GET /items/{item_id}.json Source: https://docs.invoicexpress.com/index.html.md Returns a specific item. ```APIDOC ## GET /items/{item_id}.json ### Description Returns a specific item. ### Method GET ### Endpoint /items/{item_id}.json ### Parameters #### Path Parameters - **item_id** (integer) - Required - The ID of the item. ``` -------------------------------- ### GET /sequences/{sequence_id}.json Source: https://docs.invoicexpress.com/index.html.md Returns a specific sequence. ```APIDOC ## [GET] /sequences/{sequence_id}.json ### Description Returns a specific sequence. ### Method GET ### Endpoint /sequences/{sequence_id}.json ### Parameters #### Path Parameters - **sequence_id** (integer) - Required - The ID of the sequence to retrieve. ``` -------------------------------- ### GET /sequences.json Source: https://docs.invoicexpress.com/sequences/listsequences.md Retrieves all sequences for the authenticated account. Requires an API key as a query parameter. Returns a list of sequences with their current invoice, receipt, and other document numbers and validation codes. ```APIDOC ## GET /sequences.json ### Description Returns all your sequences. ### Method GET ### Endpoint /sequences.json ### Parameters #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" ### Response #### Success Response (200) - **sequences** (array) - List of sequences. - **sequences.id** (integer) - Example: 146090 - **sequences.serie** (string) - Example: "2022" - **sequences.default_sequence** (integer) - Example: 1 - **sequences.current_invoice_number** (integer) - Current invoice number. - **sequences.current_invoice_sequence_id** (integer) - Example: 146090 - **sequences.current_invoice_validation_code** (string) - Example: "ABCD1230" - **sequences.current_invoice_receipt_number** (integer) - Current invoice receipt number. - **sequences.current_invoice_receipt_sequence_id** (integer) - Example: 146092 - **sequences.current_invoice_receipt_validation_code** (string) - Example: "ABCD1231" - **sequences.current_simplified_invoice_number** (integer) - Current simplified invoice number. - **sequences.current_simplified_invoice_sequence_id** (integer) - Example: 146091 - **sequences.current_simplified_invoice_validation_code** (string) - Example: "ABCD1232" - **sequences.current_credit_note_number** (integer) - Current credit note number. - **sequences.current_credit_note_sequence_id** (integer) - Example: 146095 - **sequences.current_credit_note_validation_code** (string) - Example: "ABCD1233" - **sequences.current_debit_note_number** (integer) - Current debit note number. - **sequences.current_debit_note_sequence_id** (integer) - Example: 146094 - **sequences.current_debit_note_validation_code** (string) - Example: "ABCD1234" - **sequences.current_receipt_number** (integer) - Current receipt number. - **sequences.current_receipt_sequence_id** (integer) - Example: 146093 - **sequences.current_receipt_validation_code** (string) - Example: "ABCD1235" - **sequences.current_shipping_number** (integer) - Current shipping number. - **sequences.current_shipping_sequence_id** (integer) - Example: 146104 - **sequences.current_shipping_validation_code** (string) - Example: "ABCD1236" - **sequences.current_transport_number** (integer) - Current transport number. - **sequences.current_transport_sequence_id** (integer) - Example: 146106 - **sequences.current_transport_validation_code** (string) - Example: "ABCD1237" - **sequences.current_devolution_number** (integer) - Current devolution number. - **sequences.current_devolution_sequence_id** (integer) - Example: 146105 - **sequences.current_devolution_validation_code** (string) - Example: "ABCD1238" - **sequences.current_proforma_number** (integer) - Current proforma number. - **sequences.current_proforma_sequence_id** (integer) - Example: 146102 - **sequences.current_proforma_validation_code** (string) - Example: "ABCD1239" - **sequences.current_quote_number** (integer) - Current quote number. - **sequences.current_quote_sequence_id** (integer) - Example: 146101 - **sequences.current_quote_validation_code** (string) - Example: "ABCD1240" - **sequences.current_fees_note_number** (integer) - Current fees note number. - **sequences.current_fees_note_sequence_id** (integer) - Example: 146103 - **sequences.current_fees_note_validation_code** (string) - Example: "N/A" - **sequences.current_vat_moss_invoice_number** (integer) - Current VAT MOSS invoice number. - **sequences.current_vat_moss_invoice_sequence_id** (integer) - Example: 146097 - **sequences.current_vat_moss_invoice_validation_code** (string) - Example: "N/A" - **sequences.current_vat_moss_credit_note_number** (integer) - Current VAT MOSS credit note number. - **sequences.current_vat_moss_credit_note_sequence_id** (integer) - Example: 146098 - **sequences.current_vat_moss_credit_note_validation_code** (string) - Example: "N/A" - **sequences.current_vat_moss_receipt_number** (integer) - Current VAT MOSS receipt number. - **sequences.current_vat_moss_receipt_sequence_id** (integer) - Example: 146099 - **sequences.current_vat_moss_receipt_validation_code** (string) - Example: "N/A" #### Error Response (401) - **errors** (array) - List of errors. - **errors.error** (string) - Example: "Authentication Error" ``` -------------------------------- ### GET /taxes/{taxes_id}.json Source: https://docs.invoicexpress.com/index.html.md Returns a specific tax. ```APIDOC ## [GET] /taxes/{taxes_id}.json ### Description Returns a specific tax. ### Method GET ### Endpoint /taxes/{taxes_id}.json ### Parameters #### Path Parameters - **taxes_id** (integer) - Required - The ID of the tax to retrieve. ``` -------------------------------- ### GET /api/pdf/{document-id}.json Source: https://docs.invoicexpress.com/estimates/generatepdf.md Generates a PDF for the specified document. The document ID is provided as a path parameter, and the API key is passed as a query parameter. On success, the response contains a URL to the generated PDF. ```APIDOC ## GET /api/pdf/{document-id}.json ### Description Generates a PDF for the specified document. The document ID is provided as a path parameter, and the API key is passed as a query parameter. On success, the response contains a URL to the generated PDF. ### Method GET ### Endpoint /api/pdf/{document-id}.json ### Parameters #### Path Parameters - **document-id** (integer) - Required - The ID of the document. Example: 1050 #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" - **second_copy** (boolean) - Optional - Indicates whether a second copy is requested. ### Response #### Success Response (200) - **output** (object) - The output object. - **output.pdfUrl** (string) - The URL to the generated PDF. Example: "url.pdf" #### Response Example { "output": { "pdfUrl": "url.pdf" } } #### Error Response (401) - **errors** (array) - List of errors. - **errors.error** (string) - Error message. Example: "Authentication Error" #### Error Response Example { "errors": [ { "error": "Authentication Error" } ] } #### Error Response (202) Accepted - The request has been accepted for processing. #### Error Response (404) Not Found - The specified document was not found. ``` -------------------------------- ### GET /api/qr_codes/{document-id}.json Source: https://docs.invoicexpress.com/guides/getqrcode.md Retrieves the QR code for a specified document. The document ID is provided as a path parameter, and the API key is passed as a query parameter. Returns the QR code URL on success, or an error message if the document is not found or not in a valid state. ```APIDOC ## GET /api/qr_codes/{document-id}.json ### Description Retrieves the QR code for a specified document. ### Method GET ### Endpoint /api/qr_codes/{document-id}.json ### Parameters #### Path Parameters - **document-id** (integer) - Required - The ID of the document. Example: 1050 #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" ### Response #### Success Response (200) - **qr_code** (object) - Contains the QR code data. - **qr_code.url** (string) - The URL of the QR code image. Example: "url.png" #### Response Example (200) { "qr_code": { "url": "url.png" } } #### Accepted Response (202) - **qr_code** (object) - Contains the QR code data. - **qr_code.message** (string) - Message indicating the QR code is being generated. Example: "QR Code is being generated" #### Response Example (202) { "qr_code": { "message": "QR Code is being generated" } } #### Unauthorized Response (401) - **errors** (array) - List of errors. - **errors.error** (string) - Error message. Example: "Authentication Error" #### Response Example (401) { "errors": [ { "error": "Authentication Error" } ] } #### Not Found Response (404) - **error** (string) - Error message. Example: "No document with ID 24563387 was found in this account" #### Response Example (404) { "error": "No document with ID 24563387 was found in this account" } #### Unprocessable Entity Response (422) - **error** (string) - Error message. Example: "Document with ID 248920464 is still in draft. QR Codes are only available for final, canceled or settled documents." #### Response Example (422) { "error": "Document with ID 248920464 is still in draft. QR Codes are only available for final, canceled or settled documents." } ``` -------------------------------- ### GET /api/export_saft.json Source: https://docs.invoicexpress.com/index.html.md Exports the Standard Audit File for Tax (SAF-T PT) required by the Portuguese Tax Authority. ```APIDOC ## GET /api/export_saft.json ### Description Exports the Standard Audit File for Tax (SAF-T PT) required by the Portuguese Tax Authority. ### Method GET ### Endpoint /api/export_saft.json ``` -------------------------------- ### GET /{estimates-type}/{document-id}.json Source: https://docs.invoicexpress.com/estimates/getestimate.md Retrieves a specific estimate document by its type and ID. The response includes detailed information about the estimate, such as client, items, taxes, and totals. ```APIDOC ## GET /{estimates-type}/{document-id}.json ### Description Retrieves a specific estimate document (quote, proforma, or fee note) by its ID and type. ### Method GET ### Endpoint GET /{estimates-type}/{document-id}.json ### Parameters #### Path Parameters - **document-id** (integer) - Required - The ID of the document. Example: 1050 - **estimates-type** (string) - Required - The type of the estimate document. Enum: "quotes", "proformas", "fees_notes" #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" ### Response #### Success Response (200) - **quote** (object) - The estimate document object. - **quote.id** (integer) - Example: 541791 - **quote.status** (string) - Example: "final" - **quote.archived** (boolean) - Indicates if the document is archived. - **quote.type** (string) - Example: "Quote" - **quote.sequence_number** (string) - Example: "1/A" - **quote.inverted_sequence_number** (string) - Example: "A/1" - **quote.atcud** (string) - Example: "ABCD1234-1" - **quote.date** (string) - Example: "12/06/2017" - **quote.due_date** (string) - Example: "12/06/2017" - **quote.reference** (string, null) - Reference field. - **quote.observations** (string, null) - No enforced character limit (text column). Example: "foo" - **quote.retention** (string, null) - Retention field. - **quote.permalink** (string) - Example: "https://web.invoicexpress.com/documents/541791f16ae45a73b703c684a221ef198c10020f3d56a1" - **quote.saft_hash** (string) - Server-generated. No enforced character limit (text column). Example: "NfTN" - **quote.sum** (number) - Example: 10 - **quote.discount** (number) - Discount amount. - **quote.before_taxes** (number) - Example: 10 - **quote.taxes** (number) - Example: 2.3 - **quote.total** (number) - Example: 12.3 - **quote.currency** (string) - Example: "Euro" - **quote.sequence_id** (integer, null) - Example: 12345 - **quote.tax_exemption** (string) - Example: "M01" - **quote.client** (object) - Client details. - **quote.client.name** (string) - Example: "John Doe" - **quote.client.code** (string) - Example: "C1" - **quote.client.country** (string) - Example: "Portugal" - **quote.client.email** (string) - Example: "john@example.com" - **quote.items** (array) - List of items. - **quote.items.description** (string, null) - Example: "Big Product" - **quote.items.unit_price** (string) - Example: "100.0" - **quote.items.quantity** (string) - Example: "1.0" - **quote.items.unit** (string) - Example: "un" - **quote.items.tax** (object) - Tax details. - **quote.items.tax.value** (number) - Example: 23 - **quote.items.subtotal** (number) - Example: 100 - **quote.items.tax_amount** (number) - Example: 23 - **quote.items.discount_amount** (number) - Discount amount for the item. #### Response Example { "quote": { "id": 541791, "status": "final", "archived": false, "type": "Quote", "sequence_number": "1/A", "inverted_sequence_number": "A/1", "atcud": "ABCD1234-1", "date": "12/06/2017", "due_date": "12/06/2017", "reference": null, "observations": "foo", "retention": null, "permalink": "https://web.invoicexpress.com/documents/541791f16ae45a73b703c684a221ef198c10020f3d56a1", "saft_hash": "NfTN", "sum": 10, "discount": 0, "before_taxes": 10, "taxes": 2.3, "total": 12.3, "currency": "Euro", "sequence_id": 12345, "tax_exemption": "M01", "client": { "name": "John Doe", "code": "C1", "country": "Portugal", "email": "john@example.com" }, "items": [ { "description": "Big Product", "unit_price": "100.0", "quantity": "1.0", "unit": "un", "tax": { "value": 23 }, "subtotal": 100, "tax_amount": 23, "discount_amount": 0 } ] } } #### Error Responses - **401 Unauthorized**: Authentication error. Response fields: `errors` (array) with `error` (string) example "Authentication Error". - **404 Not Found**: Document not found. ``` -------------------------------- ### POST /clients.json Source: https://docs.invoicexpress.com/clients.md Creates a new client. ```APIDOC ## POST /clients.json ### Description Creates a new client. ### Method POST ### Endpoint /clients.json ``` -------------------------------- ### POST /items.json Source: https://docs.invoicexpress.com/items/createitem.md Creates a new item. Requires an API key and an item object with name, description, and unit_price. Optional fields include unit and tax. Returns the created item on success, or error details on authentication or validation failure. ```APIDOC ## POST /items.json ### Description Creates a new item. ### Method POST ### Endpoint /items.json ### Parameters #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" #### Request Body - **item** (object) - Required - **item.name** (string) - Required - Item name. Values longer than 60 characters are rejected with HTTP 422 — they are not truncated. Example: "Item name" - **item.description** (string) - Required - Item description. Values longer than 200 characters are rejected with HTTP 422 — they are not truncated. Example: "Item description" - **item.unit_price** (number) - Required - Example: 9.99 - **item.unit** (string) - Optional - One of: hour, day, month, unit, service, tax, other, product, article. Example: "service" - **item.tax** (object) - Optional - **item.tax.name** (string) - Optional - Example: "IVA23" ### Request Example { "item": { "name": "Item name", "description": "Item description", "unit_price": 9.99, "unit": "service", "tax": { "name": "IVA23" } } } ### Response #### Success Response (201) - **item** (object) - **item.id** (integer) - Example: 402321 - **item.name** (string) - Example: "Medium" - **item.description** (string, null) - Example: "foo" - **item.unit_price** (string) - Example: "16.2602" - **item.unit** (string) - One of: hour, day, month, unit, service, tax, other, product, article. Example: "service" - **item.tax** (object) - **item.tax.value** (string) - Example: "23.0" - **item.tax.comment** (string) - Example: "tax value:23.0%" #### Response Example (201) { "item": { "id": 402321, "name": "Medium", "description": "foo", "unit_price": "16.2602", "unit": "service", "tax": { "value": "23.0", "comment": "tax value:23.0%" } } } #### Error Response (401) - **errors** (array) - **errors.error** (string) - Example: "Authentication Error" #### Error Response Example (401) { "errors": [ { "error": "Authentication Error" } ] } #### Error Response (422) - **errors** (array) - Lista de objetos contendo mensagens de erro detalhadas. Example: [{"error":"Price is a required field"},{"error":"RRP is a required field"},{"error":"Name is a required field"}] - **errors.error** (string) #### Error Response Example (422) { "errors": [ { "error": "Price is a required field" }, { "error": "RRP is a required field" }, { "error": "Name is a required field" } ] } ``` -------------------------------- ### POST /api/accounts/create.json Source: https://docs.invoicexpress.com/accounts.md Creates a new account. ```APIDOC ## POST /api/accounts/create.json ### Description Creates a new account. ### Method POST ### Endpoint /api/accounts/create.json ``` -------------------------------- ### POST /items.json Source: https://docs.invoicexpress.com/index.html.md Creates a new item. ```APIDOC ## POST /items.json ### Description Creates a new item. ### Method POST ### Endpoint /items.json ``` -------------------------------- ### POST /api/v3/clients/{client_id}/regularization.json Source: https://docs.invoicexpress.com/index.html.md Creates a new client’s regularization. ```APIDOC ## POST /api/v3/clients/{client_id}/regularization.json ### Description Creates a new client’s regularization. ### Method POST ### Endpoint /api/v3/clients/{client_id}/regularization.json ### Parameters #### Path Parameters - **client_id** (string) - Required - The ID of the client. ``` -------------------------------- ### POST /sequences.json Source: https://docs.invoicexpress.com/index.html.md Creates and registers a new sequence. For portuguese accounts, it’s necessary to have AT credentials configured. ```APIDOC ## [POST] /sequences.json ### Description Creates and registers a new sequence. For portuguese accounts, it’s necessary to have AT credentials configured. ### Method POST ### Endpoint /sequences.json ``` -------------------------------- ### POST /api/v3/accounts/at_communication.json Source: https://docs.invoicexpress.com/accounts/atcommunication.md Configures AT communication settings for the account. Requires an API key and provides AT subuser, password, and communication type. ```APIDOC ## POST /api/v3/accounts/at_communication.json ### Description Configures AT (Autoridade Tributária) communication settings for the account. ### Method POST ### Endpoint /api/v3/accounts/at_communication.json ### Parameters #### Query Parameters - **api_key** (string) - Required - Your API Key. Example: "YOUR_API_KEY" #### Request Body - **at_communication** (object) - Required - **at_communication.at_subuser** (string) - Required - Example: "500100200/1" - **at_communication.at_password** (string) - Required - Example: "password" - **at_communication.communication_type** (string) - Required - Enum: "auto", "manual", "guides", "portal_at" ### Request Example { "at_communication": { "at_subuser": "500100200/1", "at_password": "password", "communication_type": "auto" } } ### Response #### Success Response (200) - **success** (boolean) - Example: true #### Response Example { "success": true } #### Error Response (401) - **errors** (array) - **errors.error** (string) - Example: "Authentication Error" #### Error Response (422) - **errors** (array) - Example: [{"error":"The field communication_type can't be blank"},{"error":"The field at_subuser has an incorrect size"}] - **errors.error** (string) ``` -------------------------------- ### POST /taxes.json Source: https://docs.invoicexpress.com/index.html.md Creates a new tax. ```APIDOC ## [POST] /taxes.json ### Description Creates a new tax. ### Method POST ### Endpoint /taxes.json ```