Skip to content

HighLevel: Create Invoice

HighLevel invoices.createInvoice: arguments, response, policy and SDK examples.

← Invoices operations · Get started

Operation gohighlevel.create_invoice

Provider route: POST /invoices/. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/gohighlevel with npm, or alter-sdk-gohighlevel with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { HighLevelIntegration } from "@alter-ai/gohighlevel";
async function execute(input: Parameters<HighLevelIntegration["invoices"]["createInvoice"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new HighLevelIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.invoices.createInvoice(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_gohighlevel import HighLevelIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = HighLevelIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.invoices.create_invoice(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
bodyModelRequired within parentExpand Create Invoice — request body — body

Referenced models: Create Invoice — request body — body

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$ModelRootExpand Void invoice — response body

Referenced models: Void invoice — response body

15 more schemas are linked from the tables above, on the schema pages.

Create Invoice — request body — body
FieldTypePresenceDescription and constraints
$objectRoot
altIdstringRequired within parentlocation Id / company Id based on altType
altTypestringRequired within parentAlt Type
One of: location
attachmentsarrayOptionalattachments for the invoice
attachments[]ModelEach itemExpand Create & Send — request body — body attachments item
automaticTaxesEnabledbooleanOptionalAutomatic taxes enabled for the Invoice
businessDetailsModelRequired within parentExpand Create & Send — request body — body business Details
contactDetailsJSONRequired within parentContact information to send the invoice to
contactDetails (allOf 1)ModelAll variants applyExpand Update invoice — request body — body contact Details
currencystringRequired within parentCurrency code
discountModelRequired within parentExpand Create & Send — request body — body discount
dueDatestringOptionalDue date in YYYY-MM-DD format
invoiceNumberstringOptionalInvoice Number
invoiceNumberPrefixstringOptionalprefix for invoice number
issueDatestringRequired within parentIssue date in YYYY-MM-DD format
itemsarrayRequired within parentAn array of items for the invoice.
items[]ModelEach itemExpand Create & Send — request body — body items item
lateFeesConfigurationJSONOptionallate fees configuration
lateFeesConfiguration (allOf 1)ModelAll variants applyExpand Create & Send — request body — body / lateFeesConfiguration / type: fixed, percentage
liveModebooleanRequired within parent
miscellaneousChargesJSONOptionalmiscellaneous charges for the invoice
miscellaneousCharges (allOf 1)ModelAll variants applyExpand Create & Send — request body — body miscellaneous Charges charges, collected Miscellaneous Charges, paid Charges
namestringRequired within parentInvoice Name
paymentMethodsJSONOptionalPayment Methods for Invoices
paymentMethods (allOf 1)ModelAll variants applyExpand Get Invoice Settings — response body — payment Methods stripe
paymentScheduleJSONOptionalsplit invoice into payment schedule summing up to full invoice amount
paymentSchedule (allOf 1)ModelAll variants applyExpand Create & Send — request body — body / paymentSchedule / type: fixed, percentage
sentToModelRequired within parentExpand Create & Send — request body — body sent To
termsNotesstringOptionalTerms notes, Also supports HTML markups
tipsConfigurationJSONOptionaltips configuration for the invoice
tipsConfiguration (allOf 1)ModelAll variants applyExpand Get Invoice Settings — response body — tips Configuration tips Enabled, tips Percentage
titlestringOptionalTitle for the invoice

Referenced models: Create & Send — request body — body attachments item, Create & Send — request body — body business Details, Update invoice — request body — body contact Details, Create & Send — request body — body items item, Create & Send — request body — body discount, Create & Send — request body — body / lateFeesConfiguration / type: fixed, percentage, Get Invoice Settings — response body — payment Methods stripe, Get Invoice Settings — response body — tips Configuration tips Enabled, tips Percentage, Create & Send — request body — body / paymentSchedule / type: fixed, percentage, Create & Send — request body — body miscellaneous Charges charges, collected Miscellaneous Charges, paid Charges, Create & Send — request body — body sent To

Void invoice — response body
FieldTypePresenceDescription and constraints
$objectRoot
_idstringRequired within parentInvoice Id
altIdstringRequired within parentLocation Id or Agency Id
altTypestringRequired within parentKnown values: location
amountDueJSONRequired within parent
amountDue (anyOf 1)numberAlternativeTotal Amount Due
amountDue (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
amountPaidJSONRequired within parent
amountPaid (anyOf 1)numberAlternativeAmount Paid
amountPaid (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
automaticTaxesCalculatedbooleanOptionalIs Automatic taxes calculated for the Invoice items
automaticTaxesEnabledbooleanOptionalAutomatic taxes enabled for the Invoice
businessDetailsobjectRequired within parentBusiness Details
contactDetailsobjectRequired within parentContact Details
createdAtstringRequired within parentcreated at
currencystringRequired within parentCurrency
discountobjectOptionalDiscount
dueDatestringRequired within parentDue date in YYYY-MM-DD format
invoiceItemsarrayRequired within parentInvoice Items
invoiceItems[]stringEach item
invoiceNumberJSONRequired within parent
invoiceNumber (anyOf 1)numberAlternativeInvoice Number
invoiceNumber (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
issueDatestringRequired within parentIssue date in YYYY-MM-DD format
liveModebooleanRequired within parentLive Mode
namestringRequired within parentName of the invoice
paymentScheduleobjectOptionalsplit invoice into payment schedule summing up to full invoice amount
statusstringRequired within parentInvoice Status
Known values: draft, sent, payment_processing, paid, void, partially_paid
titlestringRequired within parentTitle
totalJSONRequired within parent
total (anyOf 1)numberAlternativeTotal Amount
total (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
updatedAtstringRequired within parentupdated at
Create & Send — request body — body attachments item
FieldTypePresenceDescription and constraints
$objectRoot
idstringRequired within parentId of the file selected
namestringRequired within parentName of the file
sizenumberRequired within parentSize of the file
typestringRequired within parentType of the file
urlstringRequired within parentURL of the file
Create & Send — request body — body business Details
FieldTypePresenceDescription and constraints
$objectRoot
addressJSONOptionalBusiness Address
address (allOf 1)ModelAll variants applyExpand Update invoice — request body — body contact Details address
customValuesarrayOptionalCustom Values
customValues[]stringEach item
logoUrlstringOptionalBusiness Logo URL
namestringOptionalBusiness Name
phoneNostringOptionalBusiness Phone Number
websitestringOptionalBusiness Website Link

Referenced models: Update invoice — request body — body contact Details address

Create & Send — request body — body discount
FieldTypePresenceDescription and constraints
$objectRoot
typestringRequired within parentDiscount type
Default: percentage
One of: percentage, fixed
validOnProductIdsarrayOptionalProduct Ids on which discount is applicable
validOnProductIds[]stringEach item
valuenumberOptionalDiscount Value
Default: 0
Update invoice — request body — body contact Details additional Emails item
FieldTypePresenceDescription and constraints
$objectRoot
emailstringRequired within parent

SDK function policy ID: gohighlevel.create_invoice. Catalog operation: create-invoice. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Required provider scopes: ["invoices.write"]

Pinned headers: {"Version": "v3"}

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.