/* Options: Date: 2024-11-14 18:01:01 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.paysecure.acculynk.net //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: WICSaleRequest.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using Paysecure.ServiceModel.Types; using Paysecure.ServiceModel; namespace Paysecure.ServiceModel { public partial class Avs { public virtual string Address { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string Zip { get; set; } public virtual string Country { get; set; } public virtual string Email { get; set; } public virtual string IPAddress { get; set; } public virtual string TelephoneNumber { get; set; } public virtual TelephoneType TelephoneType { get; set; } public virtual int DeliveryMethod { get; set; } public virtual string FirstName { get; set; } public virtual string MiddleName { get; set; } public virtual string LastName { get; set; } } public partial class MerchantDescriptor : MerchantDescriptorBase { public virtual string Name { get; set; } public virtual string Address { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string Zip { get; set; } public virtual string Country { get; set; } public virtual string CustomerServiceNumber { get; set; } public virtual string MCC { get; set; } public virtual string FNSnum { get; set; } public virtual string Email { get; set; } } public partial class MerchantDescriptorBase { public virtual MerchantDataElements DataElements { get; set; } } public enum TelephoneType { D, H, N, W, } [DataContract] public partial class WICSale : PaysecureVersion { public WICSale() { WICBalances = new List{}; WICProducts = new List{}; } [DataMember] public virtual string ApprovalCode { get; set; } [DataMember] public virtual string TranId { get; set; } [DataMember] public virtual string ErrorMessage { get; set; } [DataMember] public virtual string ErrorCode { get; set; } [DataMember] public virtual int ApprovedAmount { get; set; } [DataMember] public virtual int DiscountAmount { get; set; } [DataMember] public virtual string Network { get; set; } [DataMember] public virtual string EarliestBenefitExpirationDate { get; set; } [DataMember] public virtual List WICBalances { get; set; } [DataMember] public virtual List WICProducts { get; set; } [DataMember] public virtual string ResponseCode { get; set; } } [Route("/WICSale", "POST")] [DataContract] public partial class WICSaleRequest : IReturn { public WICSaleRequest() { WICProducts = new List{}; } [DataMember] public virtual RequestorCredentials Credentials { get; set; } [DataMember] public virtual int Amount { get; set; } [DataMember] public virtual int DiscountAmount { get; set; } [DataMember] public virtual string TranId { get; set; } [DataMember] public virtual string ReferenceKey { get; set; } [DataMember] public virtual string CurrencyCode { get; set; } [DataMember] public virtual Avs DeliveryAddress { get; set; } [DataMember] public virtual MerchantDescriptor MerchantDetails { get; set; } [DataMember] public virtual List WICProducts { get; set; } [DataMember] public virtual string Custom1 { get; set; } [DataMember] public virtual string Custom2 { get; set; } [DataMember] public virtual string Custom3 { get; set; } [DataMember] public virtual string Custom4 { get; set; } [DataMember] public virtual string Custom5 { get; set; } [DataMember] public virtual string SignatureHash { get; set; } [DataMember] public virtual ExtendedData ExtendedData { get; set; } } } namespace Paysecure.ServiceModel.Types { public enum BillPayGroup { Default, Single, Recurring, Installment, Deferred, } public partial class BillPayGroupIndicator { public virtual string MITTotalPaymentCount { get; set; } public virtual string MITAmountType { get; set; } public virtual string MITAmount { get; set; } public virtual string MITUniqueID { get; set; } public virtual string MITFrequency { get; set; } public virtual string MITValidationFlag { get; set; } public virtual string MITValidationReference { get; set; } public virtual string MITSequenceIndicator { get; set; } } public partial class CardAccountUpdaterDescriptor { public virtual CardInfoType CardDataType { get; set; } public virtual string CardNumberInfo { get; set; } public virtual string ExpiryDate { get; set; } public virtual string Status { get; set; } public virtual string ErrorCode { get; set; } public virtual string CardToken { get; set; } } public enum CardAccountUpdaterInfo { Default, Supported, NotSupported, } public enum CardInfoType { CardNumber, Token, Track, EMV, Encrypted, DPAN, ApplePay, GooglePay, SamsungPay, CPToken, EncryptedEnhanced, EncryptedJWE, } public partial class CardonFileIndicatorDescriptor { public virtual CardonFileInfo CardonFile { get; set; } public virtual StoredCredentialIndicatorInfo StoredCredentialIndicator { get; set; } public virtual TransactionInitiateInfo TransactionInitiate { get; set; } public virtual ScheduleIndicatorInfo ScheduleIndicator { get; set; } public virtual string NetworkTransactionId { get; set; } } public enum CardonFileInfo { Default, Supported, NotSupported, } public enum ChargeTypeInfo { Default, PartialShipment, Delayed, NoShow, Resubmission, } public enum DigitalWalletInfo { Default, Staged, Passthrough, } [DataContract] public partial class ExtendedData { [DataMember] public virtual string Track2DataForEMVTransaction { get; set; } [DataMember] public virtual SenderInfo SenderInfo { get; set; } [DataMember] public virtual int CashbackAmount { get; set; } [DataMember] public virtual NetworkName Network { get; set; } [DataMember] public virtual ReceiverInfo ReceiverInfo { get; set; } [DataMember] public virtual BillPayGroup BillPayGroup { get; set; } [DataMember] public virtual WalletDescriptor WalletData { get; set; } [DataMember] public virtual SecureDescriptor SecureData { get; set; } [DataMember] public virtual Level2Descriptor Level2Data { get; set; } [DataMember] public virtual PaymentFacilitatorDescriptor PaymentFacilitatorData { get; set; } [DataMember] public virtual TokenDescriptor TokenData { get; set; } [DataMember] public virtual string OTPTranId { get; set; } [DataMember] public virtual int CurrentShipment { get; set; } [DataMember] public virtual int TotalShipments { get; set; } [DataMember] public virtual bool IsTokenRequested { get; set; } [DataMember] public virtual CardonFileIndicatorDescriptor CardonFileIndicator { get; set; } [DataMember] public virtual CardAccountUpdaterInfo CardAccountUpdater { get; set; } [DataMember] public virtual int RetryAttemptCount { get; set; } [DataMember] public virtual int TotalAuthAmount { get; set; } [DataMember] public virtual string SignatureHashVersion { get; set; } [DataMember] public virtual OrderTypeInfo OrderTypeDetail { get; set; } [DataMember] public virtual BillPayGroupIndicator BillPayGroupIndicator { get; set; } [DataMember] public virtual ChargeTypeInfo ChargeTypeDetail { get; set; } [DataMember] public virtual SAFEligibleFlag SAFEligible { get; set; } } [DataContract] public partial class ExtendedResponse { [DataMember(EmitDefaultValue=false)] public virtual CardAccountUpdaterDescriptor CardAccountUpdater { get; set; } [DataMember(EmitDefaultValue=false)] public virtual string ProductId { get; set; } [DataMember(EmitDefaultValue=false)] public virtual string NetworkResponseCode { get; set; } [DataMember(EmitDefaultValue=false)] public virtual string NetworkTransactionId { get; set; } [DataMember(EmitDefaultValue=false)] public virtual string CHEmailAddrResult { get; set; } } public enum FundingSourceType { DepositAccount, Credit, Debit, Prepaid, } [DataContract] public partial class InOutTimes { } public partial class Level2Descriptor { public virtual TaxIndicator TaxDetails { get; set; } public virtual string MerchantReferenceNumber { get; set; } public virtual string MerchantTaxId { get; set; } public virtual string OrderNumber { get; set; } public virtual int TaxAmount { get; set; } public virtual string DestinationPostalCode { get; set; } public virtual string ProductDescription { get; set; } } public partial class MerchantDataElements { public virtual int RefundSettlementTypeDetails { get; set; } public virtual bool SendRecurringPOSEntryModeFeature { get; set; } public virtual bool UseOrgPOSCode { get; set; } } public enum NetworkName { Default, NYCE, CU24, XCEL, STAR, PULS, SHZM, VISA, MAST, DISC, AMEX, ALIP, UPIN, STAC, STNE, MAES, INTL, } public enum OrderTypeInfo { Default, Standing, Subscription, } public partial class PaymentFacilitatorDescriptor { public virtual string PaymentFacilitatorIndicator { get; set; } public virtual string PFPhoneNumber { get; set; } public virtual string SubMerchID { get; set; } public virtual string SellerID { get; set; } } [DataContract] public partial class PaysecureResponseInternal { [DataMember(EmitDefaultValue=false)] public virtual RequestTimestamps Timestamps { get; set; } } [DataContract] public partial class PaysecureVersion : PaysecureResponseInternal { [DataMember(EmitDefaultValue=false)] public virtual string LocalDateTime { get; set; } [DataMember(EmitDefaultValue=false)] public virtual string Token { get; set; } [DataMember(EmitDefaultValue=false)] public virtual ExtendedResponse ExtendedData { get; set; } } public partial class ReceiverInfo { public virtual string ReferenceNumber { get; set; } public virtual string AccountNumber { get; set; } /// ///Name Format FirstName{Space}LastName. For Example :- Alvaro Morata /// public virtual string Name { get; set; } public virtual string Address { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string Country { get; set; } public virtual string Zip { get; set; } public virtual string PhoneNumber { get; set; } } public partial class RequestorCredentials { [Required] public virtual string MerchantId { get; set; } [Required] public virtual string UserName { get; set; } [Required] public virtual string Password { get; set; } [Required] public virtual string Version { get; set; } } [DataContract] public partial class RequestTimestamps { [DataMember(EmitDefaultValue=false)] public virtual InOutTimes AppLayer { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes ParentLookup { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes RetryLookup { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes GetCardData { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes CardTokenize { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes CardEncrypt { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes DBInsert { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes BackendProcess { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes DBUpdate { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes ParentUpdate { get; set; } [DataMember(EmitDefaultValue=false)] public virtual InOutTimes Network { get; set; } } public enum SAFEligibleFlag { Default, True, False, } public enum ScheduleIndicatorInfo { Default, Scheduled, Unscheduled, } public partial class SecureDescriptor { public virtual string CAVV { get; set; } public virtual string SecureTransactionId { get; set; } } public partial class SenderInfo { public virtual string ReferenceNumber { get; set; } public virtual string AccountNumber { get; set; } /// ///Name Format FirstName{Space}LastName. For Example :- Alvaro Morata /// public virtual string Name { get; set; } public virtual string Address { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string Country { get; set; } /// ///DateOfBirth Format MMDDYYYY. For Example :- 05051960 /// public virtual string DateOfBirth { get; set; } public virtual string Zip { get; set; } public virtual string PhoneNumber { get; set; } public virtual FundingSourceType FundingSource { get; set; } } public enum StoredCredentialIndicatorInfo { Default, Initial, Subsequent, } public enum TaxIndicator { Default, NoTaxInfoProvided, TaxInfoProvided, TaxExemptItem, } public partial class TokenDescriptor { public virtual TokenTypes TokenType { get; set; } public virtual string TokenCryptogramData1 { get; set; } public virtual string TokenCryptogramData2 { get; set; } } public enum TokenTypes { Default, UCAF, DSRP, UCAFDSRP, VisaVerified, DigitalWallet, VisaVerifiedDigitalWallet, } public enum TransactionInitiateInfo { Default, Merchant, Terminal, Customer, } public partial class WalletDescriptor { public virtual string Type { get; set; } public virtual string EncryptedData { get; set; } public virtual string ApplicationDataHash { get; set; } public virtual string EphemeralPublicKey { get; set; } public virtual string PublicKeyHash { get; set; } public virtual string TransactionId { get; set; } public virtual string Signature { get; set; } public virtual string Version { get; set; } public virtual string ApplicationData { get; set; } public virtual string MerchantIdentifier { get; set; } public virtual string SpecialPayment { get; set; } public virtual DigitalWalletInfo DigitalWalletIndicator { get; set; } } public enum WICActionCode { Approved, CategoryNotPrescribed, SubcategoryNotPrescribed, InsufficientUnits, ProduceCodeNotSubscribed, ApprovedLowerPrice, } public partial class WICBalance { public virtual string WICCategory { get; set; } public virtual string WICSubcategory { get; set; } public virtual int WICQuantity { get; set; } } public partial class WICProduct { public virtual WICProductCodeInd ProductCodeInd { get; set; } public virtual string ProductCode { get; set; } public virtual int ItemPrice { get; set; } public virtual int ItemQuantity { get; set; } public virtual WICActionCode ActionCode { get; set; } public virtual int OriginalItemPrice { get; set; } public virtual int OriginalItemQuantity { get; set; } } public enum WICProductCodeInd { PLU = 1, UPC = 2, } }