# InvoiceXpress API Endpoints for managing Accounts, Invoices, Estimates, and organization data in InvoiceXpress. Version: 2.0.0 ## Servers Production Server ``` https://{account_name}.app.invoicexpress.com ``` Variables: - `account_name`: Your account subdomain. Default: "your-account" ## Security ### apiKeyAuth Type: apiKey In: query Name: api_key ## Download OpenAPI description [InvoiceXpress API](https://docs.invoicexpress.com/_bundle/index.yaml) ## Accounts Create, update and get info about your account. ### Create Account - [POST /api/accounts/create.json](https://docs.invoicexpress.com/accounts/createaccount.md) ### Create for existing user - [POST /api/accounts/create_already_user.json](https://docs.invoicexpress.com/accounts/createaccountexisting.md) ### Get Account - [GET /api/accounts/{account-id}/get.json](https://docs.invoicexpress.com/accounts/getaccount.md) ### Update Account - [PUT /api/accounts/{account-id}/update.json](https://docs.invoicexpress.com/accounts/updateaccount.md) ### AT Communication - [POST /api/v3/accounts/at_communication.json](https://docs.invoicexpress.com/accounts/atcommunication.md) ## Invoices Create invoices, invoice receipts, simplified invoices, vat moss invoices, credit notes & debit notes and send them to your clients. ### List All - [GET /invoices.json](https://docs.invoicexpress.com/invoices/listinvoices.md): Returns a list of invoices. ### Create Invoice - [POST /{invoices-type}.json](https://docs.invoicexpress.com/invoices/createinvoice.md): Creates a new invoice, simplified_invoice, invoice_receipt, credit_note or debit_note. ### Creating new clients or items along with the documents This method also allows to create a new client and/or new items in the same request with the following behavior: * If the client name does not exist, a new one is created. * If items do not exist with the given names, new ones will be created. * If item name already exists, the item is updated with the new values. ### Taxes Regarding item taxes, if the tax name is not found, the default tax is applyed to that item. Portuguese accounts should also send the IVA exemption reason if the invoice contains exempt items (IVA 0%). > Note: Simplified Invoices are only available in Portugal. ### Get Invoice - [GET /{invoices-type}/{document-id}.json](https://docs.invoicexpress.com/invoices/getinvoice.md) ### Update Invoice - [PUT /{invoices-type}/{document-id}.json](https://docs.invoicexpress.com/invoices/updateinvoice.md): Updates a new invoice, simplified_invoice, invoice_receipt, credit_note or debit_note. ### Creating new clients or items along with the invoice This method also allows to create a new client and/or new items in the same request with the following behavior: * If the client name does not exist, a new one is created. * If items do not exist with the given names, new ones will be created. * If item name already exists, the item is updated with the new values. ### Taxes Regarding item taxes, if the tax name is not found, the default tax is applyed to that item. Portuguese accounts should also send the IVA exemption reason if the invoice contains exempt items (IVA 0%). > Note: Simplified Invoices are only available in Portugal. ### Change Invoice State - [PUT /{invoices-type}/{document-id}/change-state.json](https://docs.invoicexpress.com/invoices/changeinvoicestate.md): Changes the state of invoice documents. | From | To | State on Request Body | Notes | | :--- | :--- | :--- | :--- | | draft | final | finalized | All documents. | | draft | settled | finalized | Only invoice_receipt. | | draft | deleted | deleted | All documents. | | final | canceled | canceled | All documents. | | settled | canceled | canceled | Only invoice_receipt. | | final | settled | settled | All documents. | | settled | final | unsettled | Only credit_note and debit_note. | ### Send Invoice by Email - [PUT /{invoices-type}/{document-id}/email-document.json](https://docs.invoicexpress.com/invoices/sendinvoiceemail.md) ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/invoices/generatepdf.md) ### Get QR Code - [GET /api/qr_codes/{document-id}.json](https://docs.invoicexpress.com/invoices/getqrcode.md) ### Related Documents - [GET /document/{document-id}/related_documents.json](https://docs.invoicexpress.com/invoices/relateddocs.md) ### Generate Payment - [POST /documents/{document-id}/partial_payments.json](https://docs.invoicexpress.com/invoices/generatepayment.md) ### Cancel Payment - [PUT /receipts/{receipt-id}/change-state.json](https://docs.invoicexpress.com/invoices/cancelreceipt.md) ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/estimates/generatepdf.md) ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/guides/generatepdf.md) ### Get QR Code - [GET /api/qr_codes/{document-id}.json](https://docs.invoicexpress.com/guides/getqrcode.md) ## Estimates Create quotes, proformas or fees notes and send them to your clients. ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/invoices/generatepdf.md) ### Create Estimate - [POST /{estimates-type}.json](https://docs.invoicexpress.com/estimates/createestimate.md): Creates a new quote, proforma or fees_note. ### Get Estimate - [GET /{estimates-type}/{document-id}.json](https://docs.invoicexpress.com/estimates/getestimate.md) ### Update Estimate - [PUT /{estimates-type}/{document-id}.json](https://docs.invoicexpress.com/estimates/updateestimate.md): Updates a quote, proforma or fees_note. ### Change Estimate State - [PUT /{estimates-type}/{document-id}/change-state.json](https://docs.invoicexpress.com/estimates/changeestimatestate.md): Changes the state of estimate documents (quotes, proformas, fees_notes). | From | To | Event | | :--- | :--- | :--- | | Draft | final | finalized | | Draft | deleted | deleted | | final | Accepted | accept | | final | refused | refuse | | final | canceled | canceled | | Accepted | refused | refuse | | refused | Accepted | accept | | Accepted | canceled | canceled | | refused | canceled | canceled | ### Send Estimate by Email - [PUT /{estimates-type}/{document-id}/email-document.json](https://docs.invoicexpress.com/estimates/sendestimateemail.md) ### List All - [GET /estimates.json](https://docs.invoicexpress.com/estimates/listestimates.md): Returns a list of estimates (Quotes, Proformas, Fees Notes). ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/estimates/generatepdf.md) ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/guides/generatepdf.md) ## Guides Create shippings, transports & devolutions and send them to your clients. ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/invoices/generatepdf.md) ### Get QR Code - [GET /api/qr_codes/{document-id}.json](https://docs.invoicexpress.com/invoices/getqrcode.md) ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/estimates/generatepdf.md) ### Create Guide - [POST /{guides-type}.json](https://docs.invoicexpress.com/guides/createguide.md): Creates a new shipping, transport or devolution. ### Get Guide - [GET /{guides-type}/{document-id}.json](https://docs.invoicexpress.com/guides/getguide.md) ### Update Guide - [PUT /{guides-type}/{document-id}.json](https://docs.invoicexpress.com/guides/updateguide.md): Updates a shipping, transport or devolution. ### Change Guide State - [PUT /{guides-type}/{document-id}/change-state.json](https://docs.invoicexpress.com/guides/changeguidestate.md): Changes the state of guide documents (shippings, transports, devolutions). | From | To | Event | | :--- | :--- | :--- | | draft | final | finalized | | draft | deleted | deleted | | final | canceled | canceled | ### Send Guide by Email - [PUT /{guides-type}/{document-id}/email-document.json](https://docs.invoicexpress.com/guides/sendguideemail.md) ### Generate PDF - [GET /api/pdf/{document-id}.json](https://docs.invoicexpress.com/guides/generatepdf.md) ### Get QR Code - [GET /api/qr_codes/{document-id}.json](https://docs.invoicexpress.com/guides/getqrcode.md) ### List All - [GET /guides.json](https://docs.invoicexpress.com/guides/listguides.md): Returns a list of guides (Shippings, Transports and Devolutions). ## Sequences A Sequence is used to group invoices in a sequential order. ### Register Sequence - [PUT /sequences/{sequence_id}/register.json](https://docs.invoicexpress.com/sequences/registersequence.md): Registers a document sequence with the Tax Authority (AT). ### List All Sequences - [GET /sequences.json](https://docs.invoicexpress.com/sequences/listsequences.md): Returns all your sequences. ### Create Sequence - [POST /sequences.json](https://docs.invoicexpress.com/sequences/createsequence.md): Creates and registers a new sequence. For portuguese accounts, it’s necessary to have AT credentials configured. ### Get Sequence - [GET /sequences/{sequence_id}.json](https://docs.invoicexpress.com/sequences/getsequence.md): Returns a specific sequence. ### Set Sequence as Default - [PUT /sequences/{sequence_id}/set_current.json](https://docs.invoicexpress.com/sequences/setsequencedefault.md): Sets a specific sequence as the default. ## Taxes A Tax is applied to invoice items when creating invoices. ### List All Taxes - [GET /taxes.json](https://docs.invoicexpress.com/taxes/listtaxes.md): Returns all your taxes. ### Create Taxes - [POST /taxes.json](https://docs.invoicexpress.com/taxes/createtax.md): Creates a new tax. ### Get Taxes - [GET /taxes/{taxes_id}.json](https://docs.invoicexpress.com/taxes/gettax.md): Returns a specific tax. ### Update Taxes - [PUT /taxes/{taxes_id}.json](https://docs.invoicexpress.com/taxes/updatetax.md): Updates a tax. ### Delete Tax - [DELETE /taxes/{taxes_id}.json](https://docs.invoicexpress.com/taxes/deletetax.md): Deletes a tax. ## SAF-T ### Export Saft - [GET /api/export_saft.json](https://docs.invoicexpress.com/saf-t/export_saft.md)