using Nop.Core.Domain.Catalog; using Nop.Core.Domain.Orders; namespace Nop.Services.Payments; /// /// Represents a payment info holder /// [Serializable] public partial class ProcessPaymentRequest { public ProcessPaymentRequest() { CustomValues = new Dictionary(); } /// /// Gets or sets a store identifier /// public int StoreId { get; set; } /// /// Gets or sets a customer identifier /// public int CustomerId { get; set; } /// /// Gets or sets an order unique identifier. Used when order is not saved yet (payment gateways that do not redirect a customer to a third-party URL) /// public Guid OrderGuid { get; set; } /// /// Gets or sets a datetime when "OrderGuid" property was generated (used for security purposes) /// public DateTime? OrderGuidGeneratedOnUtc { get; set; } /// /// Gets or sets an order total /// public decimal OrderTotal { get; set; } /// /// /// /// Gets or sets a payment method identifier /// /// public string PaymentMethodSystemName { get; set; } #region Payment method specific properties /// /// Gets or sets a credit card type (Visa, Master Card, etc...). We leave it empty if not used by a payment gateway /// public string CreditCardType { get; set; } /// /// Gets or sets a credit card owner name /// public string CreditCardName { get; set; } /// /// Gets or sets a credit card number /// public string CreditCardNumber { get; set; } /// /// Gets or sets a credit card expire year /// public int CreditCardExpireYear { get; set; } /// /// Gets or sets a credit card expire month /// public int CreditCardExpireMonth { get; set; } /// /// Gets or sets a credit card CVV2 (Card Verification Value) /// public string CreditCardCvv2 { get; set; } #endregion #region Recurring payments /// /// Gets or sets an initial (parent) order identifier if order is recurring /// public Order InitialOrder { get; set; } /// /// Gets or sets the cycle length /// public int RecurringCycleLength { get; set; } /// /// Gets or sets the cycle period /// public RecurringProductCyclePeriod RecurringCyclePeriod { get; set; } /// /// Gets or sets the total cycles /// public int RecurringTotalCycles { get; set; } #endregion /// /// You can store any custom value in this property /// public Dictionary CustomValues { get; set; } }