v1 - Invoice Payables

Submit for approval

Submits an invoice for approval

post/v1/invoice-payables/{invoicePayableId}/submit-for-approval

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

Path parameters

invoicePayableIdstring uuid required

Headers

X-Idempotency-Keystring

Request body

closePurchaseOrderboolean nullable

Whether the purchase order should be closed or not.

Response

Invoice approval submitted successfully. The invoice state will change to APPROVAL_REQUESTED. You must poll the invoice to check when it changes to APPROVAL_PENDING. If the invoice fails to submit for approval, the state will change back to IN_DRAFT and the failureContext field will be populated with the error details.

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.