/* Options: Date: 2024-12-03 12:17:22 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.paysecure.acculynk.net //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AchPreAuthCaptureRequest.* //ExcludeTypes: //DefaultImports: */ export class RequestorCredentials { // @Required() public MerchantId: string; // @Required() public UserName: string; // @Required() public Password: string; // @Required() public Version: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class MerchantDataElements { public RefundSettlementTypeDetails: number; public SendRecurringPOSEntryModeFeature: boolean; public UseOrgPOSCode: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class MerchantDescriptorBase { public DataElements: MerchantDataElements; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class MerchantDescriptor extends MerchantDescriptorBase { public Name: string; public Address: string; public City: string; public State: string; public Zip: string; public Country: string; public CustomerServiceNumber: string; public MCC: string; public FNSnum: string; public Email: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @DataContract export class ACHExtendedData { // @DataMember public CashbackAmount: number; // @DataMember public ConnectPaySubScriberId: string; // @DataMember public OrganizationId: string; // @DataMember public DeviceFingerPrint: string; // @DataMember public MerchantSessionId: string; // @DataMember public CurrencyCode: string; // @DataMember public PaymentType: string; // @DataMember public VerifyCustomer: boolean; // @DataMember public CustomerExternalId: string; // @DataMember public Description: string; // @DataMember public CustomerName: string; // @DataMember public AddressLine1: string; // @DataMember public AddressLine2: string; // @DataMember public City: string; // @DataMember public State: string; // @DataMember public Zip: string; // @DataMember public Country: string; // @DataMember public Email: string; // @DataMember public TelephoneNumber: string; // @DataMember public ReturnUrl: string; // @DataMember public CancelUrl: string; // @DataMember public EstablishData: string; // @DataMember public RedirectUrl: string; // @DataMember public RetryAttemptCount: number; // @DataMember public SignatureHashVersion: string; // @DataMember public DeadlineHashDate?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class InOutTimes { public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class RequestTimestamps { // @DataMember(EmitDefaultValue=false) public AppLayer: InOutTimes; // @DataMember(EmitDefaultValue=false) public ParentLookup: InOutTimes; // @DataMember(EmitDefaultValue=false) public RetryLookup: InOutTimes; // @DataMember(EmitDefaultValue=false) public GetCardData: InOutTimes; // @DataMember(EmitDefaultValue=false) public CardTokenize: InOutTimes; // @DataMember(EmitDefaultValue=false) public CardEncrypt: InOutTimes; // @DataMember(EmitDefaultValue=false) public DBInsert: InOutTimes; // @DataMember(EmitDefaultValue=false) public BackendProcess: InOutTimes; // @DataMember(EmitDefaultValue=false) public DBUpdate: InOutTimes; // @DataMember(EmitDefaultValue=false) public ParentUpdate: InOutTimes; // @DataMember(EmitDefaultValue=false) public Network: InOutTimes; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class PaysecureResponseInternal { // @DataMember(EmitDefaultValue=false) public Timestamps: RequestTimestamps; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class AchProviderResponse { // @DataMember public NetworkResponseCode: string; // @DataMember public TransactionStatusCode: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ACHExtendedDataResponse { // @DataMember(EmitDefaultValue=false) public NetworkResponseCode: string; // @DataMember(EmitDefaultValue=false) public NetworkErrorCode: string; // @DataMember(EmitDefaultValue=false) public DeclineReferenceCode: string; // @DataMember(EmitDefaultValue=false) public NetworkTransactionId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class AchPaysecureVersion extends PaysecureResponseInternal { // @DataMember(EmitDefaultValue=false) public LocalDateTime: string; // @DataMember(EmitDefaultValue=false) public ExtendedData: ACHExtendedDataResponse; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @DataContract export class AchPreAuthCapture extends AchPaysecureVersion { // @DataMember public TranId: string; // @DataMember public ApprovalCode: string; // @DataMember public ResponseCode: string; // @DataMember public ErrorMessage: string; // @DataMember public ErrorCode: string; // @DataMember(EmitDefaultValue=false) public AchProviderDetails: AchProviderResponse; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @Route("/ACHPreAuthCapture", "POST") // @DataContract export class AchPreAuthCaptureRequest implements IReturn { // @DataMember public Credentials: RequestorCredentials; // @DataMember public TranId: string; // @DataMember public Amount: number; // @DataMember public ReferenceKey: string; // @DataMember public MerchantDetails: MerchantDescriptor; // @DataMember public Custom1: string; // @DataMember public Custom2: string; // @DataMember public Custom3: string; // @DataMember public Custom4: string; // @DataMember public Custom5: string; // @DataMember public SignatureHash: string; // @DataMember public ExtendedData: ACHExtendedData; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'AchPreAuthCaptureRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new AchPreAuthCapture(); } }