Загрузка приложения

IInvoiceDirection

Физическое объявление TypeScript из стартового проекта Nuxt со связанными типами и комментариями к полям.

IInvoiceDirection

Направление средств счёта.

src/lib/interfaces/orionplace/payments/IInvoice.ts
TypeScript
export interface IInvoiceDirection {
  // Источник: merchant (платёжный провайдер), wallet, wallet_adjustment,
  // manager_credit, blog_revenue_pool, promocode_benefit или domain_benefit. У
  // возврата источник — категория исходной операции; учитывайте to и
  // parent_type.
  from: string;
  // Получатель: wallet, order, paid_sub или deduct для операций аккаунта;
  // merchant для возврата через провайдера и blog_revenue_pool для возврата
  // авторского дохода.
  to: string;
  // Связь обычной операции: ID заказа при to: order; купленной подписки при to:
  // paid_sub; фонда доходов при from: blog_revenue_pool; начисления менеджером
  // при from: manager_credit; записи бонуса при бонусе промокода/магазина.
  // Может отсутствовать или быть null.
  related_id?: number | null;
  // Для возвратов: категория исходной операции, например order, paid_sub,
  // wallet или writer_earning.
  parent_type?: string;
  // Для возврата: ID заказа, купленной подписки или фонда авторских доходов
  // согласно parent_type. Для платежа баланса — объект аккаунта с id, is_staff
  // и is_admin. Null, если связь не задана; ссылки на заказ/подписку строятся
  // только по соответствующим числовым ID.
  parent_related_id?: number | {
    // Значение поля id.
    id: number;
    // В объекте аккаунта parent_related_id возврата баланса: является ли
    // исходный аккаунт сотрудником.
    is_staff: boolean;
    // В объекте аккаунта parent_related_id возврата баланса: является ли
    // исходный аккаунт администратором.
    is_admin: boolean;
  } | null;
  // ID определения подписки при её оплате или возврате. Купленная подписка
  // определяется related_id или parent_related_id.
  sub_id?: number;
  // ID аккаунта автора для дохода или его возврата; условное поле.
  writer_id?: number;
  // ID аккаунта менеджера при начислении им средств; условное поле.
  manager_id?: number;
  // ID домена магазина при начислении средств менеджером; условное поле.
  domain_id?: number;
}