API Documentation
RESTful API documentation for developers
https://api.lotsinvoice.comAPI Key (Bearer token or X-API-Key header)
82
Authentication
All API requests require authentication using an API key. You can create an API key from your dashboard.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.lotsinvoice.com/api/v1/lotsinvoice/invitations/acceptlotsinvoice
/api/v1/lotsinvoice/invitations/acceptAccept Invitation
accept_invitationAccept an invitation with the token from its link (signed in with the invited email).
/api/v1/lotsinvoice/admin/abuse-reportsAdmin List Abuse Reports
admin_list_abuse_reportsLotsTech admins: abuse reports from emails and portal pages, newest first.
/api/v1/lotsinvoice/admin/businesses/:business_id/suspendAdmin Suspend Business
admin_suspend_businessLotsTech admins: suspend (or unsuspend with suspend: false) a business: sending, editing and its portal stop; reading and export stay.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/apply-creditApply Credit
apply_creditApply the customer's available credit (overpayments, credit notes) to an invoice.
/api/v1/lotsinvoice/businesses/:business_id/presetApply Preset
apply_presetSet up columns, labels, titles, tax groups and declarations for a region: us_freelancer, us_sales_tax, eu_vat, uk_vat, india_gst, india_export_lut. Tax groups are created only from tax_rates you give (ask the owner; never guess). A starting point to check with their accountant.
/api/v1/lotsinvoice/businesses/:business_id/archiveArchive Business
archive_businessArchive a business: billing for it stops, nothing is deleted, sent links keep working. Owner only.
/api/v1/lotsinvoice/businesses/:business_id/customers/:customer_id/archiveArchive Customer
archive_customerArchive (or restore: true) a customer. Nothing is deleted.
/api/v1/lotsinvoice/businesses/:business_id/invitations/:invitation_idCancel Invitation
cancel_invitationCancel a pending invitation.
/api/v1/lotsinvoice/businesses/:business_id/templates/checkCheck Template
check_templateCheck a template (html body + css) without saving: forbidden content, unknown placeholders, missing required data, and warnings.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/convertConvert Estimate
convert_estimateTurn an estimate into a draft invoice.
/api/v1/lotsinvoice/businessesCreate Business
create_businessCreate a business (the entity that sends invoices). Each business is one paid unit: it uses a plan slot or LotsTech Credits (new accounts get free credits). Ask the person for the real legal name, address, email and registration IDs; never invent them.
/api/v1/lotsinvoice/billing/checkoutCreate Checkout
create_checkoutA checkout link for a plan (starter, pro, business; monthly or annual) or a credits top-up (amount_usd, minimum 10). Show the link; the person pays in their browser.
/api/v1/lotsinvoice/businesses/:business_id/credit-notesCreate Credit Note
create_credit_noteDraft a credit note. With invoice_id it defaults to that invoice's balance and is applied to it when issued; the rest becomes customer credit.
/api/v1/lotsinvoice/businesses/:business_id/customersCreate Customer
create_customerAdd a customer. Ask for details you do not have; never invent addresses or tax IDs. Returns what is missing.
/api/v1/lotsinvoice/businesses/:business_id/declarationsCreate Declaration
create_declarationSave a statement to print on documents, e.g. "Supply meant for export under LUT without payment of IGST" or "Reverse charge applies".
/api/v1/lotsinvoice/businesses/:business_id/estimatesCreate Estimate
create_estimateDraft an estimate (quote). due_date is "valid until". The customer can accept it in the portal; convert_estimate turns it into an invoice.
/api/v1/lotsinvoice/businesses/:business_id/invoicesCreate Invoice
create_invoiceDraft an invoice. Totals are computed exactly (discounts before tax, several taxes per line). It stays a draft: show the totals to the person and ask before send_document.
/api/v1/lotsinvoice/businesses/:business_id/itemsCreate Item
create_itemSave a product or service with its price, code (SKU, HSN/SAC), unit and default tax.
/api/v1/lotsinvoice/businesses/:business_id/recurringCreate Recurring
create_recurringRepeat an invoice on a schedule (document_id), e.g. a monthly retainer. Line text may use {period}, {month}, {year}. mode draft (review first) or send (automatic).
/api/v1/lotsinvoice/businesses/:business_id/taxesCreate Tax
create_taxSave a tax from rates the owner gives you (never guess a rate): one component (name + rate) or several (components), e.g. "GST 18% intra-state" = CGST 9 + SGST 9, or "Sales tax" = State 6.25 + County 2.
/api/v1/lotsinvoice/businesses/:business_id/templatesCreate Template
create_templateSave a custom template after it passes check_template. Use it with template "custom:<id>".
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_idDelete Draft
delete_draftDelete a draft that was never sent.
/api/v1/lotsinvoice/businesses/:business_id/payments/:payment_idDelete Payment
delete_paymentRemove a recorded payment (kept for history, no longer counted).
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/duplicateDuplicate Document
duplicate_documentCopy a document into a new draft, optionally for another customer or as another type.
/api/v1/lotsinvoice/businesses/:business_id/exportExport Business
export_businessEverything about the business as JSON, with PDF links valid 7 days. Owner only.
/api/v1/lotsinvoice/businesses/:business_id/reports/agingGet Aging Report
get_aging_reportMoney owed by age (current, 1-30, 31-60, 61-90, 90+ days), per currency and customer.
/api/v1/lotsinvoice/billingGet Billing
get_billingYour LotsInvoice plan or credits, businesses in use, rates and plans to choose from.
/api/v1/lotsinvoice/businesses/:business_idGet Business
get_businessGet one business with its settings and what is still missing (next_steps).
/api/v1/lotsinvoice/businesses/:business_id/customers/:customer_idGet Customer
get_customerOne customer with open balance, available credit and recent documents.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_idGet Document
get_documentOne document with lines, totals, versions, payments and activity (viewed, reminders, portal notes).
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/pdfGet Document Pdf
get_document_pdfA download link (valid 1 hour) for the PDF. Drafts render on demand, marked DRAFT.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/previewGet Document Preview
get_document_previewA preview link (HTML, valid 1 hour), or the HTML itself with include_html.
/api/v1/lotsinvoice/businesses/:business_id/reports/paymentsGet Payments Report
get_payments_reportPayments received by method, per currency.
/api/v1/lotsinvoice/businesses/:business_id/customers/:customer_id/portal-linkGet Portal Link
get_portal_linkThe customer's portal link (view and download documents, pay, accept estimates), optionally to one document.
/api/v1/lotsinvoice/businesses/:business_id/reports/revenueGet Revenue Report
get_revenue_reportRevenue (excluding tax) by month and by customer, per currency.
/api/v1/lotsinvoice/businesses/:business_id/settingsGet Settings
get_settingsNumbering, titles, defaults, payment options, reminders, layout (columns, custom fields, blocks, labels), theme and signature.
/api/v1/lotsinvoice/businesses/:business_id/customers/:customer_id/statementGet Statement
get_statementA customer statement: opening balance, invoices, credit notes, payments and closing balance per currency.
/api/v1/lotsinvoice/businesses/:business_id/summaryGet Summary
get_summaryWhat needs attention: unpaid and overdue invoices, money received this month, drafts, open estimates and upcoming recurring invoices.
/api/v1/lotsinvoice/businesses/:business_id/reports/taxGet Tax Report
get_tax_reportTax charged by tax and rate, per currency (invoices minus credit notes).
/api/v1/lotsinvoice/businesses/:business_id/templates/:template_idGet Template
get_templateOne custom template with its html and css, to edit it.
/api/v1/lotsinvoice/template-guideGet Template Guide
get_template_guideHow to write a custom template: the safe template language, every data path, an example view and the built-in layout source to start from.
/api/v1/lotsinvoice/businesses/:business_id/customers/from-crmImport Customer From Crm
import_customer_from_crmAdd a customer from a LotsCRM contact you can read (name, email, phone, primary company).
/api/v1/lotsinvoice/businesses/:business_id/customers/importImport Customers
import_customersImport customers from CSV text (header row first; up to 1,000 rows). Columns are matched by name (name, email, phone, address, city, state, zip, country, currency, tax id) or by mapping. Try dry_run first.
/api/v1/lotsinvoice/businesses/:business_id/items/importImport Items
import_itemsImport items from CSV (name, description, code/SKU/HSN, unit, price). Up to 2,000 rows.
/api/v1/lotsinvoice/businesses/:business_id/invitationsInvite Member
invite_memberInvite someone (a partner, bookkeeper) as editor or viewer. Emails an accept link valid 7 days. Owner only.
/api/v1/lotsinvoice/businesses/:business_id/leaveLeave Business
leave_businessLeave a business you were invited to.
/api/v1/lotsinvoice/businessesList Businesses
list_businessesList the businesses you can invoice from, with your role, settings and whether the sender email is confirmed. Start here.
/api/v1/lotsinvoice/businesses/:business_id/customersList Customers
list_customersList or search customers (name, contact, email).
/api/v1/lotsinvoice/businesses/:business_id/declarationsList Declarations
list_declarationsSaved declarations (fixed statements printed on documents).
/api/v1/lotsinvoice/businesses/:business_id/documentsList Documents
list_documentsList invoices, estimates and credit notes. Filters: type, status (comma list), customer_id, from/to (issue date), overdue, search (number).
/api/v1/lotsinvoice/businesses/:business_id/itemsList Items
list_itemsSaved products and services.
/api/v1/lotsinvoice/businesses/:business_id/membersList Members
list_membersPeople with access to this business, and pending invitations (owner).
/api/v1/lotsinvoice/businesses/:business_id/paymentsList Payments
list_paymentsRecorded payments, newest first.
/api/v1/lotsinvoice/businesses/:business_id/recurringList Recurring
list_recurringRecurring invoices and their next dates.
/api/v1/lotsinvoice/businesses/:business_id/taxesList Taxes
list_taxesSaved taxes. A tax has one or more components applied together.
/api/v1/lotsinvoice/businesses/:business_id/templatesList Templates
list_templatesBuilt-in designs, custom templates and regional presets.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/mark-sentMark Document Sent
mark_document_sentIssue a draft without emailing it (you delivered it yourself): assigns the number and locks it.
/api/v1/lotsinvoice/businesses/:business_id/recurring/:recurring_id/pausePause Recurring
pause_recurringPause a recurring invoice.
/api/v1/lotsinvoice/businesses/:business_id/templates/previewPreview Template
preview_templateRender a template (template key, or unsaved html/css) with sample data at 1 to 200 lines; returns HTML.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/paymentsRecord Payment
record_paymentRecord money received for an invoice (partial allowed). Overpayment becomes customer credit. LotsInvoice does not move money.
/api/v1/lotsinvoice/businesses/:business_id/confirm-emailResend Email Confirmation
resend_email_confirmationSend the business email confirmation link again. Sending documents needs a confirmed email.
/api/v1/lotsinvoice/businesses/:business_id/restoreRestore Business
restore_businessRestore an archived business (needs plan room or credits).
/api/v1/lotsinvoice/businesses/:business_id/recurring/:recurring_id/resumeResume Recurring
resume_recurringResume a recurring invoice.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/reviseRevise Document
revise_documentChange a sent invoice or estimate: a new locked version with a reason (the number stays). Not for paid or void documents: use a credit note.
/api/v1/lotsinvoice/businesses/:business_id/customers/:customer_id/portal-link/rotateRotate Portal Link
rotate_portal_linkRevoke every earlier portal link for this customer and make a new one.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/sendSend Document
send_documentEmail the document with its PDF and portal link (from LotsInvoice, replies go to the business). A draft gets its number and is locked. Ask the person before sending.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/remindSend Reminder
send_reminderEmail a payment reminder now for a sent, unpaid invoice.
/api/v1/lotsinvoice/businesses/:business_id/numberingSet Next Number
set_next_numberSet the next document number (only forward), e.g. to continue from another tool.
/api/v1/lotsinvoice/businesses/:business_id/payment-optionsSet Payment Options
set_payment_optionsHow customers pay, shown on invoices, emails and the portal: a pay link (Stripe Payment Link, PayPal, Venmo, Cash App, Square), bank details, Zelle, UPI (India, with a QR code), check address, instructions. LotsInvoice never handles the money.
/api/v1/lotsinvoice/businesses/:business_id/themeSet Theme
set_themeChange the default template and look: template (classic, modern, minimal, bold, compact, formal, studio, executive, ledger or custom:<id>; ledger is the full-page grid Indian tax invoice), color, accent, font (inter, plex, serif, mono), density (compact, normal, comfortable), logo_position, logo_size, paper (letter, a4), accent_style (bar, band, none).
/api/v1/lotsinvoice/businesses/:business_idUpdate Business
update_businessUpdate business details. Changing the email sends a confirmation link.
/api/v1/lotsinvoice/businesses/:business_id/customers/:customer_idUpdate Customer
update_customerUpdate a customer. Documents already sent keep the details they were sent with.
/api/v1/lotsinvoice/businesses/:business_id/declarations/:declaration_idUpdate Declaration
update_declarationUpdate or archive a declaration.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_idUpdate Document
update_documentEdit a draft (any document field; lines replaces all lines). Sent documents: use revise_document.
/api/v1/lotsinvoice/businesses/:business_id/items/:item_idUpdate Item
update_itemUpdate or archive (archived: true) an item.
/api/v1/lotsinvoice/businesses/:business_id/members/:user_idUpdate Member
update_memberChange a member's role or remove them (remove: true). Owner only.
/api/v1/lotsinvoice/businesses/:business_id/recurring/:recurring_idUpdate Recurring
update_recurringChange a recurring invoice (name, mode, end_date, max_count, next_date, template).
/api/v1/lotsinvoice/businesses/:business_id/settingsUpdate Settings
update_settingsChange settings. Give only what changes, under settings: numbering {invoice:{prefix,padding,reset}}, titles {invoice:"Tax Invoice"}, defaults {notes,terms,footer,estimate_valid_days,template,line_treatment,second_currency}, reminders {enabled,offsets,subject,message}, layout {columns:[{key,label,visible,type}], custom_fields:[{key,label,scope,visible}], blocks:{tax_summary,words,signature,…}, fields:{due_date,po_number,reference,place_of_supply}, labels:{…}, words_system, show_registration_ids}, theme {color,accent,font,density,logo_position,logo_size,paper,accent_style}, signature {name,title,image_url}.
/api/v1/lotsinvoice/businesses/:business_id/taxes/:tax_idUpdate Tax
update_taxRename, change components, or archive (archived: true). Sent documents keep their taxes.
/api/v1/lotsinvoice/businesses/:business_id/templates/:template_idUpdate Template
update_templateUpdate (re-checked) or archive a custom template. Sent documents keep their version.
/api/v1/lotsinvoice/businesses/:business_id/imagesUpload Image
upload_imageUpload the logo, a signature image or a company seal (stamp) image (PNG, JPEG, WebP or GIF, 1 MB max, base64) and save it on the business.
/api/v1/lotsinvoice/businesses/:business_id/documents/:document_id/voidVoid Document
void_documentVoid a sent invoice or credit note (keeps its number). Not when payments or credits are recorded.