/* Options: Date: 2025-05-10 00:29:07 Version: 8.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://active-ewebservice.biz/aeservices30/api //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: SubmitPOSTransactionRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } // @DataContract export class BaseRequest { /** @description This is your AIM API Key provided by Tri-Tech */ // @DataMember // @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header") public ApiKey: string; // @DataMember // @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header") public OAuthToken: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class BaseSecureRequest extends BaseRequest { /** @description */ // @DataMember // @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header") public Token: string; /** @description */ // @DataMember // @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header") public DeviceId: string; /** @description */ // @DataMember // @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header") public AppId: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @DataContract export class ExceptionInfo { // @DataMember public Barcode: string; // @DataMember public Description: string; // @DataMember public Base64Image: string; // @DataMember public Category: number; // @DataMember public SubCategory?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class PosLineItem implements IScanItem { // @DataMember public SkuPk?: number; // @DataMember public SasPk?: number; // @DataMember public Sku: string; // @DataMember public Serial: string; // @DataMember public Quantity: number; // @DataMember public ExceptionInfo: ExceptionInfo; // @DataMember public Discount?: number; // @DataMember public NicsCat?: number; // @DataMember public NicsSub?: number; // @DataMember public PriceOverride?: number; // @DataMember public AllowPriceOverrideToIgnoreMinPrice: boolean; // @DataMember public Notes: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class PosResponseItem extends PosLineItem { // @DataMember public PriceEach: number; // @DataMember public Price: number; // @DataMember public Discountable: boolean; // @DataMember public ErrorMessage: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export interface IScanItem { SkuPk?: number; SasPk?: number; Sku: string; Serial: string; Quantity: number; ExceptionInfo: ExceptionInfo; } // @DataContract export class BaseResponse { /** @description */ // @DataMember // @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body") public Status: BaseResponseResult; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class SubmitPOSTransactionResponse extends BaseResponse { // @DataMember public RefNumber: string; // @DataMember public ErrorItems: PosResponseItem[]; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description In development, not yet for public use. */ // @Route("/SubmitPOSTransaction", "POST") // @DataContract export class SubmitPOSTransactionRequest extends BaseSecureRequest implements IReturn { // @DataMember public Acct?: number; // @DataMember public LocId?: number; // @DataMember public TaxId?: number; // @DataMember public Items: PosLineItem[]; /** @description Can be CARD, CARD_DEVICE, CASH, CHARGE, SUSPEND, ONFILE, or OTHER */ // @DataMember // @ApiMember(DataType="string", Description="Can be CARD, CARD_DEVICE, CASH, CHARGE, SUSPEND, ONFILE, or OTHER", Name="TenderType", ParameterType="query") public TenderType: string; /** @description Only applicable for Tender Type of OTHER. Send the Payment Category # */ // @DataMember // @ApiMember(DataType="string", Description="Only applicable for Tender Type of OTHER. Send the Payment Category #", Name="OtherTenderCategory", ParameterType="query") public OtherTenderCategory?: number; // @DataMember public CardToken: string; // @DataMember public CardExpiration: string; // @DataMember public TokenPk?: number; // @DataMember public SaveCard: boolean; // @DataMember public PONumber: string; /** @description Can be INVOICE, PROPOSAL, APPROVAL, ORDER, or LOANER. Defaults to INVOICE is not sent. */ // @DataMember // @ApiMember(DataType="string", Description="Can be INVOICE, PROPOSAL, APPROVAL, ORDER, or LOANER. Defaults to INVOICE is not sent.", Name="TransactionMode", ParameterType="query") public TransactionMode: string; /** @description Only valid for Approvals and Orders. */ // @DataMember // @ApiMember(DataType="decimal", Description="Only valid for Approvals and Orders.", Name="Deposit", ParameterType="query") public Deposit: number; // @DataMember public Notes: string; /** @description Do Not Send This Parameter */ // @DataMember // @ApiMember(Description="Do Not Send This Parameter", Name="OnlineContractRef", ParameterType="query") public OnlineContractRef: string; // @DataMember public ShipId?: number; // @DataMember public CardTerminalId: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'SubmitPOSTransactionRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new SubmitPOSTransactionResponse(); } }