data-and-reporting-sdk
Version:
Data And Reporting product consists of API's which provides details of transaction and invoice informations about shell cards. The Shell Card Transaction and Invoice API is REST-based and employs Basic authentication in Version 1 and Oauth authentication
194 lines (190 loc) • 6.39 kB
text/typescript
/**
* Shell Data & Reporting APIsLib
*
* This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
*/
import { nullable, number, object, optional, Schema, string } from '../schema';
/** Latest statement of the account generated for the given Payer. */
export interface LastStatementOfAccount {
/** Invoiced amount and due for payment. */
amountDue?: number | null;
/** Invoiced amount and not overdue for payment. */
amountNotOverdue?: number | null;
/** Invoiced amount and overdue for payment. */
amountOverdue?: number | null;
/** Credit limit. */
creditLimit?: number | null;
/**
* ISO code of the credit limit’s currency.
* Example: EUR
*/
creditLimitCurrencyCode?: string | null;
/**
* Symbol of the credit limit’s currency.
* Example: €
*/
creditLimitCurrencySymbol?: string | null;
/**
* Credit limit in Customer currency.
* **Note**: For currency details refer the parameters CurrencyCode & CurrencySymbol in the StatementOfAccount response.
*/
creditLimitInCustomerCurrency?: number | null;
/**
* ISO code of SOA currency.
* Example: EUR
*/
currencyCode?: string | null;
/**
* Symbol of SOA currency.
* Example: €
*/
currencySymbol?: string | null;
/**
* ISO code of Last Payment currency.
* Example: EUR
*/
lastPaymentCurrencyCode?: string | null;
/**
* Symbol of Last Payment currency.
* Example: €
*/
lastPaymentCurrencySymbol?: string | null;
/** Last payment date. Format: yyyyMMdd */
lastPaymentDate?: string | null;
/** Last payment value. */
lastPaymentValue?: number | null;
/** Current outstanding balance amount. */
outstandingBalance?: number | null;
/** Payment customer id of the customer. */
payerId?: number | null;
/** Payment customer number. */
payerNumber?: string | null;
/** Due date for payment. Format: yyyyMMdd */
paymentDueDate?: string | null;
/**
* Payment method description of the Payer.
* Example: Id & Description
* • Incoming - Direct Debit
* • Incoming - Cheque
* • Incoming - Direct Debit A
* • Incoming - Bank Transfer
* • Incoming - Cash
*/
paymentMethod?: string | null;
/**
* Payment method Id of the Payer.
* Example: Id & Description
* • Incoming - Direct Debit
* • Incoming - Cheque
* • Incoming - Direct Debit A
* • Incoming - Bank Transfer
* • Incoming - Cash
*/
paymentMethodId?: number | null;
/**
* Payment terms description of the Payer.
* Example: Id & Description
* • 14 days after Invoice
* • 15 days after Invoice
* • 21 days after Invoice
* • 30 days after Invoice
* • 45 days after Invoice
* • 0 days after invoice
* • days after invoice
* • days after invoice
* • 7 days after invoice
* • 10th of the following month
*/
paymentTerms?: string | null;
/**
* Payment terms Id of the Payer.
* Example: Id & Description
* • 14 days after Invoice
* • 15 days after Invoice
* • 21 days after Invoice
* • 30 days after Invoice
* • 45 days after Invoice
* • 0 days after invoice
* • days after invoice
* • days after invoice
* • 7 days after invoice
* • 10th of the following month
*/
paymentTermsId?: number | null;
/** Statement of account reference number */
soAReferenceNumber?: string | null;
/**
* Date on which the SOA was generated.
* Format: yyyyMMdd
*/
statementDate?: string | null;
/**
* Statement of account identifier,
* Example: 1
*/
statementOfAccountId?: number | null;
/** Total number of billing documents for this Statement of Account */
totalBillingDocuments?: number | null;
/** Total number of summary billing documents for this Statement of Account */
totalSummaryBillingDocuments?: number | null;
/**
* Unallocated payment.
* When negative, indicates overdue amount.
*/
unallocatedPayment?: number | null;
}
export const lastStatementOfAccountSchema: Schema<LastStatementOfAccount> = object(
{
amountDue: ['AmountDue', optional(nullable(number()))],
amountNotOverdue: ['AmountNotOverdue', optional(nullable(number()))],
amountOverdue: ['AmountOverdue', optional(nullable(number()))],
creditLimit: ['CreditLimit', optional(nullable(number()))],
creditLimitCurrencyCode: [
'CreditLimitCurrencyCode',
optional(nullable(string())),
],
creditLimitCurrencySymbol: [
'CreditLimitCurrencySymbol',
optional(nullable(string())),
],
creditLimitInCustomerCurrency: [
'CreditLimitInCustomerCurrency',
optional(nullable(number())),
],
currencyCode: ['CurrencyCode', optional(nullable(string()))],
currencySymbol: ['CurrencySymbol', optional(nullable(string()))],
lastPaymentCurrencyCode: [
'LastPaymentCurrencyCode',
optional(nullable(string())),
],
lastPaymentCurrencySymbol: [
'LastPaymentCurrencySymbol',
optional(nullable(string())),
],
lastPaymentDate: ['LastPaymentDate', optional(nullable(string()))],
lastPaymentValue: ['LastPaymentValue', optional(nullable(number()))],
outstandingBalance: ['OutstandingBalance', optional(nullable(number()))],
payerId: ['PayerId', optional(nullable(number()))],
payerNumber: ['PayerNumber', optional(nullable(string()))],
paymentDueDate: ['PaymentDueDate', optional(nullable(string()))],
paymentMethod: ['PaymentMethod', optional(nullable(string()))],
paymentMethodId: ['PaymentMethodId', optional(nullable(number()))],
paymentTerms: ['PaymentTerms', optional(nullable(string()))],
paymentTermsId: ['PaymentTermsId', optional(nullable(number()))],
soAReferenceNumber: ['SoAReferenceNumber', optional(nullable(string()))],
statementDate: ['StatementDate', optional(nullable(string()))],
statementOfAccountId: [
'StatementOfAccountId',
optional(nullable(number())),
],
totalBillingDocuments: [
'TotalBillingDocuments',
optional(nullable(number())),
],
totalSummaryBillingDocuments: [
'TotalSummaryBillingDocuments',
optional(nullable(number())),
],
unallocatedPayment: ['UnallocatedPayment', optional(nullable(number()))],
}
);