Skip to main content
POST
/
api
/
invoices
Create invoice
curl --request POST \
  --url https://dev.exante.app/api/invoices \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "target_party_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "owner_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "document_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "invoice_blueprint_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "issue_date": "2023-11-07T05:31:56Z",
  "due_date": "2023-11-07T05:31:56Z",
  "invoice_number": "<string>",
  "status": "DRAFT",
  "currency": "USD",
  "invoice_type": "ACCOUNTS_RECEIVABLE",
  "invoice_fields": {}
}
'
{
  "status": "success",
  "status_code": 200,
  "message": "Success",
  "data": {
    "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "invoice_number": "<string>",
    "invoice_type": "ACCOUNTS_PAYABLE",
    "status": "<string>",
    "collection_method": "charge_automatically",
    "issue_date": "2023-11-07T05:31:56Z",
    "due_date": "2023-11-07T05:31:56Z",
    "paid_date": "2023-11-07T05:31:56Z",
    "subtotal_cents": 123,
    "discount_cents": 123,
    "tax_cents": 123,
    "total": 123,
    "total_cents": 123,
    "pre_payment_credit_notes_cents": 123,
    "amount_due_cents": 123,
    "amount_paid_cents": 123,
    "amount_remaining_cents": 123,
    "overdue_days": 123,
    "currency": "<string>",
    "invoice_link": "<string>",
    "document_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "invoice_blueprint_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "target_party_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "age": 123,
    "has_comments": true,
    "line_items": [
      {
        "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "invoice_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "context_type_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "context_type": "DISCOUNT",
        "context_name": "<string>",
        "currency": "<string>",
        "quantity": 123,
        "unit_price": 123,
        "line_total": 123
      }
    ],
    "invoice_fields": [
      {
        "key": "<string>",
        "value": {
          "type": "<string>",
          "original_type": "<string>",
          "value": "<unknown>"
        }
      }
    ],
    "parties": {
      "client": {
        "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "<string>",
        "address": "<string>",
        "billing_contact": {
          "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "party_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "name": "<string>",
          "title": "<string>",
          "email": "jsmith@example.com",
          "phone": "<string>"
        },
        "role": "<string>"
      },
      "service_provider": {
        "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "<string>",
        "address": "<string>",
        "billing_contact": {
          "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "party_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "name": "<string>",
          "title": "<string>",
          "email": "jsmith@example.com",
          "phone": "<string>"
        },
        "role": "<string>"
      }
    },
    "integrations": [
      {
        "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "entity_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "integration_name": "<string>",
        "integration_uid": "<string>",
        "created_at": "2023-11-07T05:31:56Z",
        "updated_at": "2023-11-07T05:31:56Z",
        "integration_metadata": {}
      }
    ],
    "invoice_notes": {
      "invoice_memo": "<string>",
      "invoice_footer": "<string>"
    },
    "comments": [
      {
        "uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "text": "<string>",
        "created_at": "2023-11-07T05:31:56Z",
        "last_modified_at": "2023-11-07T05:31:56Z",
        "resolved_by": 123,
        "resolved_at": "2023-11-07T05:31:56Z",
        "actor": {
          "id": 123,
          "fullname": "<string>",
          "avatar": "<string>",
          "email": "jsmith@example.com"
        }
      }
    ]
  }
}
Creates a new invoice. If invoice_number is omitted or blank, the backend generates one.

Minimal request

{
  "target_party_uid": "550e8400-e29b-41d4-a716-446655440000",
  "owner_uid": "550e8400-e29b-41d4-a716-446655440001",
  "document_uid": "550e8400-e29b-41d4-a716-446655440002"
}

Full request

{
  "target_party_uid": "550e8400-e29b-41d4-a716-446655440000",
  "owner_uid": "550e8400-e29b-41d4-a716-446655440001",
  "document_uid": "550e8400-e29b-41d4-a716-446655440002",
  "invoice_blueprint_uid": "550e8400-e29b-41d4-a716-446655440003",
  "issue_date": "2026-03-30T00:00:00Z",
  "due_date": "2026-04-29T00:00:00Z",
  "invoice_number": "INV-2026-0042",
  "status": "DRAFT",
  "currency": "USD",
  "invoice_type": "ACCOUNTS_RECEIVABLE",
  "invoice_fields": {
    "payment_terms": { "type": "string", "value": "NET_30" },
    "project_name": { "type": "string", "value": "Implementation" }
  }
}

Notes

  • document_uid is currently required by the backend.
  • target_party_uid must be a party the authenticated user can bill from the specified organization.
  • invoice_fields is a map keyed by field name, not an array.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
target_party_uid
string<uuid>
required
owner_uid
string<uuid>
required
document_uid
string<uuid>
required
invoice_blueprint_uid
string<uuid> | null
issue_date
string<date-time> | null
due_date
string<date-time> | null
invoice_number
string | null
status
string
default:DRAFT
currency
string
default:USD
Required string length: 3
invoice_type
enum<string>
default:ACCOUNTS_RECEIVABLE
Available options:
ACCOUNTS_PAYABLE,
ACCOUNTS_RECEIVABLE
invoice_fields
object

Response

Invoice created

status
string
Example:

"success"

status_code
integer
Example:

200

message
string
Example:

"Success"

data
object