Skip to main content
POST
/
billing
/
invoices
Create Invoice
curl --request POST \
  --url https://api.meow.com/v1/billing/invoices \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "line_items": [
    {
      "product_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "quantity": 50000000.0005,
      "price": 50000000.005,
      "description": "<string>",
      "discount_percentage": 50,
      "discount_description": "<string>"
    }
  ],
  "invoice_date": "2023-12-25",
  "due_date": "2023-12-25",
  "payment_method_types": [
    "BANK_TRANSFER"
  ],
  "send_email_on_creation": true,
  "collection_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "recurring_schedule": "<string>",
  "additional_recipient_emails": [
    "jsmith@example.com"
  ],
  "note": "<string>",
  "name": "<string>",
  "show_contact_address": false
}
'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "status": "Draft",
  "amount": "<string>",
  "amount_paid": "<string>",
  "amount_due": "<string>",
  "line_item_ids": [
    "3c90c3cc-0d44-4b50-8888-8dd25736052a"
  ],
  "payment_method_types": [
    "BANK_TRANSFER"
  ],
  "send_email_on_creation": true,
  "additional_recipient_emails": [
    "<string>"
  ],
  "collection_account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "created_at": "2023-11-07T05:31:56Z",
  "name": "<string>",
  "invoice_number": "<string>",
  "invoice_date": "2023-12-25",
  "due_date": "2023-12-25",
  "note": "<string>",
  "updated_at": "2023-11-07T05:31:56Z",
  "paid_at": "2023-11-07T05:31:56Z",
  "canceled_at": "2023-11-07T05:31:56Z",
  "sent_at": "2023-11-07T05:31:56Z",
  "expired_at": "2023-11-07T05:31:56Z"
}

Authorizations

x-api-key
string
header
required

Your Meow API key for authentication

Headers

x-entity-id
string<uuid>

Optional entity ID for scoped access to entity-specific data

Body

application/json
customer_id
string<uuid>
required
line_items
InvoiceLineRequest · object[]
required
invoice_date
string<date>
required

Date the invoice is scheduled to be sent

due_date
string<date>
required

Date the invoice is due

payment_method_types
enum<string>[]
required

Payment method types to enable on the invoice. BANK_TRANSFER is always enabled.

Available options:
BANK_TRANSFER,
CARD,
ACH_DIRECT_DEBIT,
INTERNATIONAL_WIRE,
USDC_ETHEREUM,
USDC_SOLANA,
USDC_BASE,
USDT_ETHEREUM,
USDT_SOLANA,
CASH_SOLANA
send_email_on_creation
boolean
required

If true, sends an email to the contact (and any additional recipients) on the invoice_date.

collection_account_id
string<uuid>
required

Account ID that payments on this invoice will be deposited to

recurring_schedule
string | null

RFC 5545 RRULE string. Required: DTSTART, RRULE. Allowed frequencies: WEEKLY, MONTHLY.

Required string length: 1 - 120
additional_recipient_emails
string<email>[] | null

Additional recipient emails to send the invoice and any reminders to

Maximum array length: 20
note
string | null

Note to include on the invoice

Maximum string length: 300
name
string | null

Name of the invoice

Maximum string length: 32
show_contact_address
boolean
default:false

Whether to show the contact's address on the invoice, if it exists

Response

Successful Response

id
string<uuid>
required

The unique identifier for the invoice

customer_id
string<uuid>
required

The unique identifier for the customer

status
enum<string>
required

The current status of the invoice

Available options:
Draft,
Open,
Pending,
Scheduled,
Partially Paid,
Paid,
Canceled,
Expired,
Overdue
amount
string
required

The total amount of the invoice

Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
amount_paid
string
required

The amount that has been paid on the invoice

Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
amount_due
string
required

The remaining amount due on the invoice

Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
line_item_ids
string<uuid>[]
required

List of line item IDs associated with the invoice

payment_method_types
enum<string>[]
required

List of allowed payment methods for the invoice

Available options:
BANK_TRANSFER,
CARD,
ACH_DIRECT_DEBIT,
INTERNATIONAL_WIRE,
USDC_ETHEREUM,
USDC_SOLANA,
USDC_BASE,
USDT_ETHEREUM,
USDT_SOLANA,
CASH_SOLANA
send_email_on_creation
boolean
required

Whether to send an email upon invoice creation

additional_recipient_emails
string[]
required

List of additional email addresses to receive the invoice

collection_account_id
string<uuid>
required

The account ID where funds will be collected

created_at
string<date-time>
required

The timestamp when the invoice was created

name
string | null

The name of the invoice

invoice_number
string | null

The public-facing invoice number

invoice_date
string<date> | null

The date the invoice is scheduled to be sent

due_date
string<date> | null

The date the invoice payment is due

note
string | null

A note associated with the invoice

updated_at
string<date-time> | null

The timestamp when the invoice was last updated

paid_at
string<date-time> | null

The timestamp when the invoice was fully paid

canceled_at
string<date-time> | null

The timestamp when the invoice was canceled

sent_at
string<date-time> | null

The timestamp when the invoice was sent

expired_at
string<date-time> | null

The timestamp when the invoice expired