v1 - Invoice Payables

Create invoice payable

Creates a new invoice payable document. Supports inline line items via the lineItems field for single-request creation.

post/v1/invoice-payables

Request

  • Base URL
    https://light.inc (the document declares no server; this is the origin it was published from)
  • Auth
    • API key in header Authorization
    • or HTTP bearer

Headers

X-Idempotency-Keystring

Request body

vendorIdstring uuid nullable

ID of the vendor.

amountinteger nullable

Invoice total amount in cents.

currencystring nullable
processingMode'DATA_ONLY' | 'AI_PARSE_AND_MERGE'

How the invoice should be processed (skip AI Parse or AI Parse + merge).

⚠️ This enum is not exhaustive; new values may be added in the future.

type'VENDOR_INVOICE' | 'SELF_BILLED'

Type of bill to create. SELF_BILLED creates a self-billed invoice that you issue on the vendor's behalf: it starts as a draft and takes the company entity's next self-billed number when it is submitted or posted, unless invoiceNumber is set. Rejected when processingMode is AI_PARSE_AND_MERGE.

⚠️ This enum is not exhaustive; new values may be added in the future.

documentTemplateIdstring uuid nullable

ID of the self-billed document template used to render the bill. Must be an active self-billed template assigned to companyEntityId. When omitted on a self-billed bill, the newest active self-billed template of the company entity is used. Rejected when processingMode is AI_PARSE_AND_MERGE.

companyEntityIdstring uuid nullable

ID of the company entity.

invoiceNumberstring nullable

Invoice number.

descriptionstring nullable

Invoice description.

issuedDatestring date nullable

Issue date of the original vendor invoice.

postingDatestring date nullable

Date the invoice payable is posted to the ledger, which sets its accounting period independently of the issued date. Defaults to the issued date when omitted on creation.

dueDatestring date nullable

Payment due date of the invoice payable.

paymentAtstring date-time nullable

Date/time when payment is scheduled or was executed for this invoice payable.

senderBankAccountIdstring uuid nullable

ID of the sender bank account from which this invoice payable will be paid.

lineItemsIncludeTaxboolean nullable

Whether invoice line item amounts are entered as tax-inclusive. When true, line item amount is expected to be the gross amount including tax; when false, line item netAmount is expected to be the base amount excluding tax.

localCurrencyFxRateOverridenumber nullable

Custom FX rate for the ledger's local currency. If not provided, Light uses official ECB rates.

groupCurrencyFxRateOverridenumber nullable

Custom FX rate for the ledger's group currency. If not provided, Light uses official ECB rates.

Example request

{
  "currency": "USD"
}

Response

default response

idstring uuid

External ID of the invoice payable object.

type'REIMBURSEMENT' | 'SELF_BILLED' | 'VENDOR_INVOICE'

Type of the invoice payable (e.g. vendor invoice or reimbursement).

⚠️ This enum is not exhaustive; new values may be added in the future.

invoicePayableIdstring uuid

Internal ID of the underlying invoice payable record.

companyIdstring uuid

ID of the company this invoice payable belongs to.

state'INIT' | 'CREATED' | 'IN_DRAFT' | 'APPROVAL_REQUESTED' | 'APPROVAL_PENDING' | 'APPROVED_ACCOUNTING_ENTRY_PENDING' | 'DECLINED' | 'READY_FOR_PAYMENT_RELEASE' | 'PENDING_PAYMENT_APPROVAL' | 'PAYMENT_PAUSED' | 'SCHEDULED' | 'PAYMENT_PENDING' | 'PARTIALLY_PAID' | 'UNPAID' | 'PAID' | 'COMPLETED' | 'RESET_PENDING' | 'CANCELLATION_PENDING' | 'CANCELLED' | 'DUPLICATED' | 'IMPORT_PENDING'

Current state of the invoice payable in its lifecycle (from ingestion to payment/completion).

⚠️ This enum is not exhaustive; new values may be added in the future.

failureReason'EMAIL_NOT_ALLOWED' | 'ERP_ENTRY_FAILED' | 'OCR_FAILED' | 'DOCUMENT_PROCESSING_FAILED' | 'PAYMENT_APPROVAL_DECLINED' | 'PAYMENT_FAILED' | 'RESETTING_INVOICE_FAILED' | 'CANCELLING_INVOICE_FAILED' | 'APPROVAL_SUBMISSION_FAILED' | 'PAYMENT_VALIDATION_FAILED' | 'USER_INPUT_VALIDATION_FAILED' | 'DUPLICATE_INVOICE' | 'PAYMENT_REJECTED' | 'PAYMENT_REVERSED' nullable

High-level reason why processing the invoice payable failed, if any.

⚠️ This enum is not exhaustive; new values may be added in the future.

approvalNotestring nullable

Approval note associated with the invoice payable (e.g. approver comments).

cancellationReasonstring nullable

Reason why the invoice payable was cancelled, if applicable.

payeeNamestring nullable

Name of the payee for this invoice payable.

payeeIbanstring nullable

Payee IBAN used for payment of this invoice payable.

payeeBbanstring nullable

Payee BBAN (Basic Bank Account Number) used for local payments.

payeeBicstring nullable

Payee bank BIC/SWIFT code.

payeeBankCodestring nullable

Payee bank/branch code used for local payments.

payeeSwedishBankgiroNumberstring nullable

Payee Swedish Bankgiro number, if applicable.

payeeSwedishPlusgiroNumberstring nullable

Payee Swedish Plusgiro number, if applicable.

payeeCountry'AC' | 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AN' | 'AO' | 'AQ' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BU' | 'BV' | 'BW' | 'BY' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CK' | 'CL' | 'CM' | 'CN' | 'CO' | 'CP' | 'CR' | 'CS' | 'CU' | 'CV' | 'CW' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DG' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EA' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'EU' | 'EZ' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'FX' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GS' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'IC' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IO' | 'IQ' | 'IR' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KP' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'LY' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MM' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MW' | 'MX' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NT' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PS' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RU' | 'RW' | 'SA' | 'SB' | 'SC' | 'SD' | 'SE' | 'SF' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'SS' | 'ST' | 'SU' | 'SV' | 'SX' | 'SY' | 'SZ' | 'TA' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TP' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UK' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VE' | 'VG' | 'VI' | 'VN' | 'VU' | 'WF' | 'WS' | 'XI' | 'XU' | 'XK' | 'YE' | 'YT' | 'YU' | 'ZA' | 'ZM' | 'ZR' | 'ZW' nullable

Country of the payee.

⚠️ This enum is not exhaustive; new values may be added in the future.

payeeAddressstring nullable

Street address of the payee.

payeeZipcodestring nullable

ZIP/postal code of the payee.

payeeBankNamestring nullable

Name of the payee's bank.

payeeBankCountry'AC' | 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AN' | 'AO' | 'AQ' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BQ' | 'BR' | 'BS' | 'BT' | 'BU' | 'BV' | 'BW' | 'BY' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CK' | 'CL' | 'CM' | 'CN' | 'CO' | 'CP' | 'CR' | 'CS' | 'CU' | 'CV' | 'CW' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DG' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EA' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'EU' | 'EZ' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'FX' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GS' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'IC' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IO' | 'IQ' | 'IR' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KP' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'LY' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MM' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MW' | 'MX' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NT' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PS' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RU' | 'RW' | 'SA' | 'SB' | 'SC' | 'SD' | 'SE' | 'SF' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'SS' | 'ST' | 'SU' | 'SV' | 'SX' | 'SY' | 'SZ' | 'TA' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TP' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UK' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VE' | 'VG' | 'VI' | 'VN' | 'VU' | 'WF' | 'WS' | 'XI' | 'XU' | 'XK' | 'YE' | 'YT' | 'YU' | 'ZA' | 'ZM' | 'ZR' | 'ZW' nullable

Country of the payee's bank.

⚠️ This enum is not exhaustive; new values may be added in the future.

payeeBankAddressstring nullable

Street address of the payee's bank.

payeeBankZipcodestring nullable

ZIP/postal code of the payee's bank.

payeeCitystring nullable

City of the payee.

payeeBankCitystring nullable

City of the payee's bank.

vendorIdstring uuid nullable

ID of the vendor entity this invoice payable is linked to, if any.

companyEntityIdstring uuid nullable

ID of the company entity this invoice payable is booked under.

invoiceNumberstring nullable

Invoice number provided on the vendor invoice.

amountinteger nullable

Total invoice amount in cents, expressed in the invoice currency.

outstandingBalanceinteger nullable

Outstanding invoice balance to be paid in cents, expressed in the invoice currency. 0 means the bill is settled. null means Light derived no balance for it — for instance the bill has no amount yet, its state is CANCELLED, DECLINED or DUPLICATED, or the company does not keep its ledger in Light — so do not read null as fully paid.

amountPaidinteger nullable

Amount paid against the invoice in cents, expressed in the invoice currency. Credit notes and reversed payments are not counted. null means Light derived no balance for the bill, as for outstandingBalance.

currencystring
descriptionstring nullable

Description or memo for the invoice payable.

senderBankAccountIdstring uuid nullable

ID of the sender bank account from which this invoice payable will be paid.

fiNumberstring nullable

FI (Finnish reference) number associated with this invoice payable, if applicable.

finnishPaymentReferencestring nullable

Finnish payment reference (viitenumero or RF Creditor Reference) associated with this invoice payable, if applicable.

norKidReferencestring nullable

Norwegian KID reference associated with this invoice payable, if applicable.

swissPaymentReferencestring nullable

Swiss payment reference (QR-Reference or Creditor Reference/SCOR) associated with this invoice payable, if applicable.

swedishOcrReferencestring nullable

Swedish OCR reference associated with this invoice payable, if applicable.

creditorNoteOverridestring nullable

Override for the reference sent to the bank alongside the payment, used when the invoice number itself exceeds the payment scheme's length limit. Falls back to the invoice number when unset.

senderPurposeCodestring nullable

Purpose code the paying bank's regulator requires for this payment (e.g. a Norwegian Skatteetaten code for cross-border payments above NOK 100,000). The allowed codes come from the purpose-code requirements endpoint.

receiverPurposeCodestring nullable

Purpose code the receiving bank's regulator requires for this payment (e.g. an RBI code for payments to India). The allowed codes come from the purpose-code requirements endpoint.

paymentAtstring date-time nullable

Date/time when payment is scheduled or was executed for this invoice payable.

ocrCompletedAtstring date-time nullable

Timestamp when OCR processing for this invoice payable was completed.

canceledAtstring date-time nullable

Timestamp when this invoice payable was cancelled.

issuedDatestring date nullable

Issue date of the original vendor invoice.

postingDatestring date

Date the invoice payable is posted to the ledger, which sets its accounting period.

dueDatestring date nullable

Payment due date of the invoice payable.

invoiceCreatedAtstring date-time

Timestamp when the invoice payable record was created.

updatedAtstring date-time

Timestamp when the invoice payable record was last updated.

purchaseOrderIdstring uuid nullable

ID of the purchase order linked to this invoice payable, if any.

documentTemplateIdstring uuid nullable

ID of the self-billed document template used to render this invoice payable, if any.

lineItemsIncludeTaxboolean

Whether invoice line item amounts are entered as tax-inclusive. When true, line item amount is expected to be the gross amount including tax; when false, line item netAmount is expected to be the base amount excluding tax.

localCurrencyFxRatenumber nullable

Foreign exchange rate to the ledger's local currency. If null, the system uses its default FX source.

groupCurrencyFxRatenumber nullable

Foreign exchange rate to the ledger's group currency. If null, the system uses its default FX source.

paymentPausedBystring uuid nullable

ID of the user who paused payment for this invoice payable, if payment is paused.

paymentPausedAtstring date-time nullable

Timestamp when payment for this invoice payable was paused, if applicable.

senderEmailstring nullable

Email address from which the invoice payable was received, if known.

documentNamestring nullable

Name of the original document file associated with this invoice payable.

Example response

{
  "currency": "USD"
}

Changes

No recorded changes to this operation across all 1 revision of this API.