using Newtonsoft.Json; namespace Nop.Plugin.Payments.PayPalCommerce.Services.Api.Models.PaymentSources; /// /// Represents the payment card to use to fund a payment /// public class Card { #region Properties /// /// Gets or sets the card holder's name as it appears on the card. /// [JsonProperty(PropertyName = "name")] public string Name { get; set; } /// /// Gets or sets the primary account number (PAN) for the payment card. /// [JsonProperty(PropertyName = "number")] public string Number { get; set; } /// /// Gets or sets the three- or four-digit security code of the card. Also known as the CVV, CVC, CVN, CVE, or CID. This parameter cannot be present in the request when `payment_initiator=MERCHANT`. /// [JsonProperty(PropertyName = "security_code")] public string SecurityCode { get; set; } /// /// Gets or sets the year and month, in ISO-8601 `YYYY-MM` date format. See [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6). /// [JsonProperty(PropertyName = "expiry")] public string Expiry { get; set; } /// /// Gets or sets the billing address for this card. /// [JsonProperty(PropertyName = "billing_address")] public Address BillingAddress { get; set; } /// /// Gets or sets the additional attributes associated with the use of this card. /// [JsonProperty(PropertyName = "attributes")] public Attributes Attributes { get; set; } /// /// Gets or sets the additional details to process a payment using a `card` that has been stored or is intended to be stored (also referred to as stored_credential or card-on-file). /// [JsonProperty(PropertyName = "stored_credential")] public StoredCredential StoredCredential { get; set; } /// /// Gets or sets the PayPal-generated ID for the saved card payment source. Typically stored on the merchant's server. /// [JsonProperty(PropertyName = "vault_id")] public string VaultId { get; set; } /// /// Gets or sets the 3rd party network token refers to a network token that the merchant provisions from and vaults with an external TSP (Token Service Provider) other than PayPal. /// [JsonProperty(PropertyName = "network_token")] public NetworkToken NetworkToken { get; set; } /// /// Gets or sets the payer experience during the 3DS Approval for payment. /// [JsonProperty(PropertyName = "experience_context")] public ExperienceContext ExperienceContext { get; set; } /// /// Gets or sets the results of Authentication such as 3D Secure. /// [JsonProperty(PropertyName = "authentication_result")] public AuthenticationResult AuthenticationResult { get; set; } /// /// Gets or sets the previous network transaction reference including id in response. /// [JsonProperty(PropertyName = "network_transaction_reference")] public NetworkTransactionReference NetworkTransactionReference { get; set; } /// /// Gets or sets the last digits of the payment card. /// [JsonProperty(PropertyName = "last_digits")] public string LastDigits { get; set; } /// /// Gets or sets the card brand or network. Typically used in the response. /// [JsonProperty(PropertyName = "card_type")] public string CardType { get; set; } /// /// Gets or sets the card Verification status. /// [JsonProperty(PropertyName = "verification_status")] public string VerificationStatus { get; set; } /// /// Gets or sets the Bank Identification Number (BIN) details used to fund a payment. /// [JsonProperty(PropertyName = "bin_details")] public BinDetails BinDetails { get; set; } /// /// Gets or sets the payment card type. Typically used in the response. /// [JsonProperty(PropertyName = "type")] public string Type { get; set; } /// /// Gets or sets the card brand or network. Typically used in the response. /// [JsonProperty(PropertyName = "brand")] public string Brand { get; set; } #endregion }