Application Load

IInvoice

The physical TypeScript declaration from the Nuxt starter, with linked types and field comments.

IInvoice

Customer invoice.

interfaces/orionplace/payments/IInvoice.ts
TypeScript
export interface IInvoice {
  // Invoice ID.
  id: number;
  // Linked order ID, or null for an invoice without an order.
  order_id: number | null;
  // Payment-method metadata, or null.
  payment_method: IPaymentMethod | null;
  // Provider transaction identifier; it can be empty before a provider
  // transaction exists.
  merchant_transaction_id: string;
  // Comment attached to the payment; it can be empty and is returned in the
  // language it was written in.
  comment: string;
  // Creation, update and expiration timestamps. Update or expiration can be
  // null.
  dates: {
    // Value of created.
    created: IApiDateTime;
    // Value of updated.
    updated: IApiDateTime | null;
    // Value of expiration.
    expiration: IApiDateTime | null;
  };
  // Generated payment URL, which can be empty. Reading it does not confirm
  // payment.
  payment_generated_link: string;
  // Payment-page mode: `EPaymentLinkType.IFRAME` or
  // `EPaymentLinkType.REDIRECT`; can be null.
  link_type: EPaymentLinkType | null;
  // Refund-account text when returned for this transaction.
  to_refund_account?: string;
  // Original transaction ID and related refund ID; each can be null. The whole
  // field is conditional.
  refund_relations?: {
    // Value of is_refund_for.
    is_refund_for: number | null;
    // Value of has_refund.
    has_refund: number | null;
  };
  // Refunds of this payment, oldest first. Empty when the payment has none; a
  // backend without refund details omits the field.
  refunds?: IInvoiceRefund[];
  // Source, destination and conditional related identifiers for the
  // transaction. A manager-funded wallet grant uses `from: manager_credit` and
  // includes `manager_id` and `domain_id`.
  transaction_direction: IInvoiceDirection | null;
  // Transaction category; use it together with direction and refund relations.
  transaction_type: string;
  // Amount keyed by currency ID, with formatted and numeric values.
  amount: ICurrencyAmounts;
  // `int` is `EInvoiceStatus`; `text` is its localized label.
  status: {
    // Value of int.
    int: EInvoiceStatus;
    // Value of text.
    text: string;
  };
}