/// <summary> /// Initializes a new instance of the <see cref="Payment" /> class. /// </summary> /// <param name="paymentType">Defines the type of the payment. (required).</param> /// <param name="method">method (required).</param> /// <param name="pinPresent">Indicates if the cards Personal Identification Number was supplied. (required).</param> /// <param name="entryMethod">The method in which the card information entered the system. (required).</param> /// <param name="issuerResponse">issuerResponse.</param> /// <param name="issuerApprovedAmount">The actual approved amount. This field should be filled in when the message has already passed through the issuer (e.g. post-authorization). For transaction/authorization this amount refers to the amount that was locked on the card-holders account..</param> /// <param name="issuerCardBalance">The payment methods account balance if available. This field should be filled in when the message has already passed through the issuer (e.g. post-authorization)..</param> /// <param name="verificationAvs">verificationAvs.</param> /// <param name="verification3ds">verification3ds.</param> /// <param name="verificationCvv">verificationCvv.</param> /// <param name="userDefined">A JSON object that carries any additional information that might be helpful for fraud detection..</param> public Payment(PaymentTypeEnum paymentType = default(PaymentTypeEnum), Method method = default(Method), bool pinPresent = default(bool), EntryMethodEnum entryMethod = default(EntryMethodEnum), IssuerResponse issuerResponse = default(IssuerResponse), string issuerApprovedAmount = default(string), string issuerCardBalance = default(string), VerificationAvs verificationAvs = default(VerificationAvs), Verification3ds verification3ds = default(Verification3ds), VerificationCvv verificationCvv = default(VerificationCvv), Object userDefined = default(Object)) { this.PaymentType = paymentType; // to ensure "method" is required (not null) this.Method = method ?? throw new ArgumentNullException("method is a required property for Payment and cannot be null"); this.PinPresent = pinPresent; this.EntryMethod = entryMethod; this.IssuerResponse = issuerResponse; this.IssuerApprovedAmount = issuerApprovedAmount; this.IssuerCardBalance = issuerCardBalance; this.VerificationAvs = verificationAvs; this.Verification3ds = verification3ds; this.VerificationCvv = verificationCvv; this.UserDefined = userDefined; }
/// <summary> /// Initializes a new instance of the <see cref="PaymentRegistrationAllOf" /> class. /// </summary> /// <param name="originalTransactionType">Defines the type of the original transaction that is being evaluated for the Fraud Score..</param> /// <param name="issuerResponse">issuerResponse.</param> /// <param name="verificationAvs">verificationAvs.</param> /// <param name="verification3ds">verification3ds.</param> /// <param name="verificationCvv">verificationCvv.</param> /// <param name="registrationMethod">registrationMethod.</param> public PaymentRegistrationAllOf(string originalTransactionType = default(string), IssuerResponse issuerResponse = default(IssuerResponse), VerificationAvs verificationAvs = default(VerificationAvs), Verification3ds verification3ds = default(Verification3ds), VerificationCvv verificationCvv = default(VerificationCvv), RegistrationMethod registrationMethod = default(RegistrationMethod)) { this.OriginalTransactionType = originalTransactionType; this.IssuerResponse = issuerResponse; this.VerificationAvs = verificationAvs; this.Verification3ds = verification3ds; this.VerificationCvv = verificationCvv; this.RegistrationMethod = registrationMethod; }
/// <summary> /// Initializes a new instance of the <see cref="PaymentRegistration" /> class. /// </summary> /// <param name="merchantRef">Merchant reference code. Used by FirstAPI and reflected in settlement records and webhook notifications. Typically, the merchantRef field is the purchase order number or unique sequence value associated to a given transaction..</param> /// <param name="transactionType">Type of transaction merchant wants to process. (required).</param> /// <param name="customer">customer (required).</param> /// <param name="merchant">merchant (required).</param> /// <param name="device">device.</param> /// <param name="userDefined">A JSON object that can carry any additional information that might be helpful for fraud detection..</param> /// <param name="originalTransactionType">Defines the type of the original transaction that is being evaluated for the Fraud Score. (required).</param> /// <param name="issuerResponse">issuerResponse.</param> /// <param name="verificationAvs">verificationAvs.</param> /// <param name="verification3ds">verification3ds.</param> /// <param name="verificationCvv">verificationCvv.</param> /// <param name="registrationMethod">registrationMethod (required).</param> public PaymentRegistration(string merchantRef = default(string), string transactionType = default(string), Customer customer = default(Customer), Merchant merchant = default(Merchant), FraudRegistrationDevice device = default(FraudRegistrationDevice), Object userDefined = default(Object), string originalTransactionType = default(string), IssuerResponse issuerResponse = default(IssuerResponse), VerificationAvs verificationAvs = default(VerificationAvs), Verification3ds verification3ds = default(Verification3ds), VerificationCvv verificationCvv = default(VerificationCvv), RegistrationMethod registrationMethod = default(RegistrationMethod)) { // to ensure "transactionType" is required (not null) this.TransactionType = transactionType ?? throw new ArgumentNullException("transactionType is a required property for PaymentRegistration and cannot be null"); // to ensure "customer" is required (not null) this.Customer = customer ?? throw new ArgumentNullException("customer is a required property for PaymentRegistration and cannot be null"); // to ensure "merchant" is required (not null) this.Merchant = merchant ?? throw new ArgumentNullException("merchant is a required property for PaymentRegistration and cannot be null"); // to ensure "originalTransactionType" is required (not null) this.OriginalTransactionType = originalTransactionType ?? throw new ArgumentNullException("originalTransactionType is a required property for PaymentRegistration and cannot be null"); // to ensure "registrationMethod" is required (not null) this.RegistrationMethod = registrationMethod ?? throw new ArgumentNullException("registrationMethod is a required property for PaymentRegistration and cannot be null"); this.MerchantRef = merchantRef; this.Device = device; this.UserDefined = userDefined; this.IssuerResponse = issuerResponse; this.VerificationAvs = verificationAvs; this.Verification3ds = verification3ds; this.VerificationCvv = verificationCvv; }