UNPKG

@apideck/node

Version:
334 lines (333 loc) 8.85 kB
/** * Apideck * The Apideck OpenAPI Spec: SDK Optimized * * The version of the OpenAPI document: 10.13.0 * Contact: support@apideck.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { Address } from './Address'; import { BankAccount } from './BankAccount'; import { Currency } from './Currency'; import { CustomField } from './CustomField'; import { DeprecatedLinkedTrackingCategory } from './DeprecatedLinkedTrackingCategory'; import { InvoiceLineItem } from './InvoiceLineItem'; import { LinkedCustomer } from './LinkedCustomer'; import { LinkedLedgerAccount } from './LinkedLedgerAccount'; import { LinkedTrackingCategories } from './LinkedTrackingCategories'; import { PassThroughBody } from './PassThroughBody'; /** * * @export * @interface Invoice */ export interface Invoice { /** * A unique identifier for an object. * @type {string} * @memberof Invoice */ readonly id?: string; /** * The third-party API ID of original entity * @type {string} * @memberof Invoice */ readonly downstream_id?: string | null; /** * Invoice type * @type {string} * @memberof Invoice */ type?: InvoiceType; /** * Invoice number. * @type {string} * @memberof Invoice */ number?: string | null; /** * * @type {LinkedCustomer} * @memberof Invoice */ customer?: LinkedCustomer | null; /** * The company or subsidiary id the transaction belongs to * @type {string} * @memberof Invoice */ company_id?: string | null; /** * Date invoice was issued - YYYY-MM-DD. * @type {Date} * @memberof Invoice */ invoice_date?: Date | null; /** * The invoice due date is the date on which a payment or invoice is scheduled to be received by the seller - YYYY-MM-DD. * @type {Date} * @memberof Invoice */ due_date?: Date | null; /** * Terms of payment. * @type {string} * @memberof Invoice */ terms?: string | null; /** * A PO Number uniquely identifies a purchase order and is generally defined by the buyer. The buyer will match the PO number in the invoice to the Purchase Order. * @type {string} * @memberof Invoice */ po_number?: string | null; /** * Optional invoice reference. * @type {string} * @memberof Invoice */ reference?: string | null; /** * Invoice status * @type {string} * @memberof Invoice */ status?: InvoiceStatus; /** * Invoice sent to contact/customer. * @type {boolean} * @memberof Invoice */ invoice_sent?: boolean; /** * * @type {Currency} * @memberof Invoice */ currency?: Currency | null; /** * Currency Exchange Rate at the time entity was recorded/generated. * @type {number} * @memberof Invoice */ currency_rate?: number | null; /** * Amounts are including tax * @type {boolean} * @memberof Invoice */ tax_inclusive?: boolean | null; /** * Sub-total amount, normally before tax. * @type {number} * @memberof Invoice */ sub_total?: number | null; /** * Total tax amount applied to this invoice. * @type {number} * @memberof Invoice */ total_tax?: number | null; /** * Applicable tax id/code override if tax is not supplied on a line item basis. * @type {string} * @memberof Invoice */ tax_code?: string | null; /** * Discount percentage applied to this invoice. * @type {number} * @memberof Invoice */ discount_percentage?: number | null; /** * Discount amount applied to this invoice. * @type {number} * @memberof Invoice */ discount_amount?: number | null; /** * Total amount of invoice, including tax. * @type {number} * @memberof Invoice */ total?: number | null; /** * Balance of invoice due. * @type {number} * @memberof Invoice */ balance?: number | null; /** * Amount of deposit made to this invoice. * @type {number} * @memberof Invoice */ deposit?: number | null; /** * Customer memo * @type {string} * @memberof Invoice */ customer_memo?: string | null; /** * * @type {DeprecatedLinkedTrackingCategory} * @memberof Invoice */ tracking_category?: DeprecatedLinkedTrackingCategory | null; /** * * @type {LinkedTrackingCategories} * @memberof Invoice */ tracking_categories?: LinkedTrackingCategories | null; /** * * @type {Array<InvoiceLineItem>} * @memberof Invoice */ line_items?: Array<InvoiceLineItem>; /** * * @type {Address} * @memberof Invoice */ billing_address?: Address; /** * * @type {Address} * @memberof Invoice */ shipping_address?: Address; /** * Optional invoice template * @type {string} * @memberof Invoice */ template_id?: string | null; /** * URL link to a source document - shown as 'Go to [appName]' in the downstream app. Currently only supported for Xero. * @type {string} * @memberof Invoice */ source_document_url?: string | null; /** * Payment method used for the transaction, such as cash, credit card, bank transfer, or check * @type {string} * @memberof Invoice */ payment_method?: string | null; /** * The channel through which the transaction is processed. * @type {string} * @memberof Invoice */ channel?: string | null; /** * language code according to ISO 639-1. For the United States - EN * @type {string} * @memberof Invoice */ language?: string | null; /** * Indicates if accounting by row is used (true) or not (false). Accounting by row means that a separate ledger transaction is created for each row. * @type {boolean} * @memberof Invoice */ accounting_by_row?: boolean | null; /** * * @type {BankAccount} * @memberof Invoice */ bank_account?: BankAccount; /** * * @type {LinkedLedgerAccount} * @memberof Invoice */ ledger_account?: LinkedLedgerAccount | null; /** * When custom mappings are configured on the resource, the result is included here. * @type {object} * @memberof Invoice */ readonly custom_mappings?: object | null; /** * * @type {Array<CustomField>} * @memberof Invoice */ custom_fields?: Array<CustomField>; /** * A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. * @type {string} * @memberof Invoice */ row_version?: string | null; /** * The user who last updated the object. * @type {string} * @memberof Invoice */ readonly updated_by?: string | null; /** * The user who created the object. * @type {string} * @memberof Invoice */ readonly created_by?: string | null; /** * The date and time when the object was last updated. * @type {Date} * @memberof Invoice */ readonly updated_at?: Date | null; /** * The date and time when the object was created. * @type {Date} * @memberof Invoice */ readonly created_at?: Date | null; /** * * @type {PassThroughBody} * @memberof Invoice */ pass_through?: PassThroughBody; } /** * @export * @enum {string} */ export declare enum InvoiceType { standard = "standard", credit = "credit", service = "service", product = "product", supplier = "supplier", other = "other" } /** * @export * @enum {string} */ export declare enum InvoiceStatus { draft = "draft", submitted = "submitted", authorised = "authorised", partially_paid = "partially_paid", paid = "paid", void = "void", credit = "credit", deleted = "deleted" } export declare function InvoiceFromJSON(json: any): Invoice; export declare function InvoiceFromJSONTyped(json: any, ignoreDiscriminator: boolean): Invoice; export declare function InvoiceToJSON(value?: Invoice | null): any;