Skip to main content
POST
/
v0
/
business
/
{business_id}
/
invoice
Create an Invoice
curl --request POST \
  --url https://api.sandbox.getasset.com/v0/business/{business_id}/invoice \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
[
  {
    "number": "<string>",
    "description": "<string>",
    "due_at": "2023-11-07T05:31:56Z",
    "sent_at": "2023-11-07T05:31:56Z",
    "lines": [
      {
        "description": "<string>",
        "amount": 520.56,
        "ledger_id": "<string>",
        "metadata": {}
      }
    ],
    "customer_id": "cus_WQMDNUHpBThYSNh4AprDBo",
    "customer_external_id": "cust_ext_001",
    "metadata": {},
    "tags": {
      "Location": "NYC"
    }
  }
]
'
{
  "data": [
    {
      "business_id": "<string>",
      "number": "<string>",
      "description": "<string>",
      "total_amount": 123,
      "due_at": "2023-11-07T05:31:56Z",
      "sent_at": "2023-11-07T05:31:56Z",
      "id": "<string>",
      "customer_id": "<string>",
      "total_paid": 0,
      "voided_at": "2023-11-07T05:31:56Z",
      "metadata": {},
      "lines": [
        {
          "description": "<string>",
          "ledger_id": "ldg_ErisumsAc7qgmbTctM7zKK",
          "amount": 123,
          "id": "<string>",
          "invoice_id": "<string>",
          "metadata": {}
        }
      ],
      "payments": [
        {
          "invoice_id": "<string>",
          "payment_id": "<string>",
          "datetime": "2023-11-07T05:31:56Z",
          "payment_amount": 123,
          "id": "<string>",
          "transaction_id": "txn_WQMDNUHpBThYSNh4AprDBo",
          "credit_journal_entry_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "credit_memo_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "invoice": "<unknown>",
          "is_write_off": false
        }
      ],
      "tags": {
        "Job": [
          {
            "amount": "3000.00",
            "value": "Maple Street Remodel"
          },
          {
            "amount": "1500.00",
            "value": "Downtown Office Rewire"
          }
        ]
      }
    }
  ],
  "errors": [
    {
      "error": "<string>",
      "invoice_number": "<string>"
    }
  ]
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Headers

x-user-id
string | null

Optional external entity identifier that performed the action

Path Parameters

business_id
string<biz_string>
required

The id of the business

Example:

"biz_GA6EG2qFxA97NZHtxeLPUy"

Body

application/json
Maximum array length: 100
number
string
required

The number of the invoice

Maximum string length: 255
Example:

"INV-001"

description
string
required

The description of the invoice

Maximum string length: 512
Example:

"Web development services"

due_at
string<date-time>
required

The due date of the invoice in ISO-8601 format

Example:

"2025-02-15T00:00:00Z"

sent_at
string<date-time>
required

The date the invoice was sent in ISO-8601 format

Example:

"2025-01-15T00:00:00Z"

lines
InvoiceLineCreate · object[]
required

The lines of the invoice

customer_id
string<cus_string> | null

The ID of the Customer that the invoice is associated with. Required if customer_external_id is not provided.

Example:

"cus_WQMDNUHpBThYSNh4AprDBo"

customer_external_id
string | null

The external ID of the Customer that the invoice is associated with. Required if customer_id is not provided.

Maximum string length: 255
Example:

"cust_ext_001"

metadata
Metadata · object | null
tags
Tags · object | null

Inline tag input. Each field maps to either a single value (string, e.g. 'NYC') or a list of {value, amount} objects to allocate the invoice across multiple values. The tag field must already exist; values are created automatically if missing. Per-field sum of amounts must not exceed the invoice total.

Example:
{ "Location": "NYC" }

Response

Successful Response

data
InvoicePublic · object[]
required
errors
InvoiceCreateError · object[]
required