/// <summary>
 /// Initializes a new instance of the <see cref="PaymentDevicePaymentMethod" /> class.
 /// </summary>
 /// <param name="paymentDevice">paymentDevice (required).</param>
 /// <param name="paymentFacilitator">paymentFacilitator.</param>
 public PaymentDevicePaymentMethod(PaymentDevice paymentDevice = default(PaymentDevice), PaymentFacilitator paymentFacilitator = default(PaymentFacilitator))
 {
     // to ensure "paymentDevice" is required (not null)
     this.PaymentDevice      = paymentDevice ?? throw new ArgumentNullException("paymentDevice is a required property for PaymentDevicePaymentMethod and cannot be null");
     this.PaymentFacilitator = paymentFacilitator;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="PaymentDevicePaymentTokenizationRequestAllOf" /> class.
 /// </summary>
 /// <param name="paymentDevice">paymentDevice (required).</param>
 public PaymentDevicePaymentTokenizationRequestAllOf(PaymentDevice paymentDevice = default(PaymentDevice))
 {
     // to ensure "paymentDevice" is required (not null)
     this.PaymentDevice = paymentDevice ?? throw new ArgumentNullException("paymentDevice is a required property for PaymentDevicePaymentTokenizationRequestAllOf and cannot be null");
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="PaymentDevicePaymentTokenizationRequest" /> class.
 /// </summary>
 /// <param name="paymentDevice">paymentDevice (required).</param>
 /// <param name="requestType">Object name of tokenization request. (required).</param>
 /// <param name="storeId">An optional outlet ID for clients that support multiple stores in the same app..</param>
 /// <param name="billingAddress">billingAddress.</param>
 /// <param name="createToken">createToken (required).</param>
 /// <param name="accountVerification">If the account should be verified prior to token creation. (default to false).</param>
 /// <param name="merchantTransactionId">The unique merchant transaction ID from the request, if supplied..</param>
 /// <param name="additionalDetails">additionalDetails.</param>
 public PaymentDevicePaymentTokenizationRequest(PaymentDevice paymentDevice = default(PaymentDevice), string requestType = default(string), string storeId = default(string), Address billingAddress = default(Address), CreatePaymentToken createToken = default(CreatePaymentToken), bool accountVerification = false, string merchantTransactionId = default(string), AdditionalDetails additionalDetails = default(AdditionalDetails)) : base(requestType, storeId, billingAddress, createToken, accountVerification, merchantTransactionId, additionalDetails)
 {
     // to ensure "paymentDevice" is required (not null)
     this.PaymentDevice = paymentDevice ?? throw new ArgumentNullException("paymentDevice is a required property for PaymentDevicePaymentTokenizationRequest and cannot be null");
 }