UNPKG

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

175 lines (171 loc) 5.67 kB
/** * Shell Data & Reporting APIsLib * * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { array, boolean, lazy, nullable, number, object, optional, Schema, string, } from '../schema'; import { Address, addressSchema } from './address'; import { DeliveryAddresses, deliveryAddressesSchema, } from './deliveryAddresses'; import { ErrorStatus, errorStatusSchema } from './errorStatus'; import { PINAdviceTypes, pINAdviceTypesSchema } from './pINAdviceTypes'; export interface CustomerDetailResponse { /** Account Id of the selected account. */ accountId?: number | null; /** Account Name of the selected account. */ accountName?: string | null; /** Account Number of the selected account. */ accountNumber?: string | null; /** Short name of the customer. */ accountShortName?: string | null; /** Trading name of the customer */ accountTradingName?: string | null; /** * True/False. * When false, users should not be allowed to enable Fleet Id prompt option while ordering cards under this account. */ allowFleetIdInput?: boolean; /** * Band Id and Description of the Payer in Card Platform * e.g. (Id – Description): * 1-Platinum * 2-Gold * 3-Silver * 4-Bronze */ band?: string | null; billingAddress?: Address; /** * Card group position at – * • Payer – Payer level * • Account – Account level */ cardGroupPosition?: string | null; correspondenceAddress?: Address; deliveryAddresses?: DeliveryAddresses[]; /** Is Fleet Pin optional enabled for the selected account */ fleetPin?: boolean; /** Full Name of the customer */ fullName?: string | null; /** Customer Id of the Invoice Point of the account */ invoiceCustomerId?: number | null; /** Short Name of the Invoice Point of the account */ invoiceCustomerShortName?: string | null; /** Whether the account is an invoice point. */ isInvoicePoint?: boolean | null; /** * Marketing Segmentation id and description * e.g. (Id – Description): * 1-National CRT * 2-International CRT & IKAs * 3-Small Customers * 4-National/International Fleet/IKA */ marketingSegmentation?: string | null; /** VAT Registration Number of Customer */ vATNumber?: string | null; /** Payer Id of the selected account. */ payerId?: number | null; /** Payer Name of the selected account. */ payerName?: string | null; /** Payer Number of the selected account. */ payerNumber?: string | null; /** Is Self-selected Pin enabled for the account */ selfSelectedPin?: boolean | null; /** * Payer current status id and description * e.g. (Id – Description): * 1-Active * 2-Requested from UTA * 3-Awaiting embossing * 4-Manufactured * 5-Awaiting despatch */ status?: string | null; /** * Default PIN AdviceType of the customer. * Possible Values: * 1. Paper * 2. Email * 3. SMS * 4. None */ defaultPINAdviceType?: number | null; pINAdviceTypes?: PINAdviceTypes[]; error?: ErrorStatus; /** API Request id */ requestId?: string | null; /** PIN change allowed for card holder or not. */ pINChangeAllowedByCardholder?: boolean; /** PIN change allowed from fleetpin or not. */ pINChangeAllowedFromFleetPIN?: boolean; } export const customerDetailResponseSchema: Schema<CustomerDetailResponse> = object( { accountId: ['AccountId', optional(nullable(number()))], accountName: ['AccountName', optional(nullable(string()))], accountNumber: ['AccountNumber', optional(nullable(string()))], accountShortName: ['AccountShortName', optional(nullable(string()))], accountTradingName: ['AccountTradingName', optional(nullable(string()))], allowFleetIdInput: ['AllowFleetIdInput', optional(boolean())], band: ['Band', optional(nullable(string()))], billingAddress: ['BillingAddress', optional(lazy(() => addressSchema))], cardGroupPosition: ['CardGroupPosition', optional(nullable(string()))], correspondenceAddress: [ 'CorrespondenceAddress', optional(lazy(() => addressSchema)), ], deliveryAddresses: [ 'DeliveryAddresses', optional(array(lazy(() => deliveryAddressesSchema))), ], fleetPin: ['FleetPin', optional(boolean())], fullName: ['FullName', optional(nullable(string()))], invoiceCustomerId: ['InvoiceCustomerId', optional(nullable(number()))], invoiceCustomerShortName: [ 'InvoiceCustomerShortName', optional(nullable(string())), ], isInvoicePoint: ['IsInvoicePoint', optional(nullable(boolean()))], marketingSegmentation: [ 'MarketingSegmentation', optional(nullable(string())), ], vATNumber: ['VATNumber', optional(nullable(string()))], payerId: ['PayerId', optional(nullable(number()))], payerName: ['PayerName', optional(nullable(string()))], payerNumber: ['PayerNumber', optional(nullable(string()))], selfSelectedPin: ['SelfSelectedPin', optional(nullable(boolean()))], status: ['Status', optional(nullable(string()))], defaultPINAdviceType: [ 'DefaultPINAdviceType', optional(nullable(number())), ], pINAdviceTypes: [ 'PINAdviceTypes', optional(array(lazy(() => pINAdviceTypesSchema))), ], error: ['Error', optional(lazy(() => errorStatusSchema))], requestId: ['RequestId', optional(nullable(string()))], pINChangeAllowedByCardholder: [ 'PINChangeAllowedByCardholder', optional(boolean()), ], pINChangeAllowedFromFleetPIN: [ 'PINChangeAllowedFromFleetPIN', optional(boolean()), ], } );