Class: PaypalServerSdk::CardStoredCredential
- Inherits:
-
BaseModel
- Object
- CoreLibrary::BaseModel
- BaseModel
- PaypalServerSdk::CardStoredCredential
- Defined in:
- lib/paypal_server_sdk/models/card_stored_credential.rb
Overview
Provides 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). Parameter compatibility: `payment_type=ONE_TIME` is compatible only with `payment_initiator=CUSTOMER`. `usage=FIRST` is compatible only with `payment_initiator=CUSTOMER`. `previous_transaction_reference` or `previous_network_transaction_reference` is compatible only with `payment_initiator=MERCHANT`. Only one of the parameters - `previous_transaction_reference` and `previous_network_transaction_reference` - can be present in the request.
Instance Attribute Summary collapse
-
#payment_initiator ⇒ PaymentInitiator
The person or party who initiated or triggered the payment.
-
#payment_type ⇒ StoredPaymentSourcePaymentType
Indicates the type of the stored payment_source payment.
-
#previous_network_transaction_reference ⇒ NetworkTransactionReference
Reference values used by the card network to identify a transaction.
-
#usage ⇒ StoredPaymentSourceUsageType
Indicates if this is a ‘first` or `subsequent` payment using a stored payment source (also referred to as stored credential or card on file).
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(payment_initiator:, payment_type:, usage: StoredPaymentSourceUsageType::DERIVED, previous_network_transaction_reference: SKIP) ⇒ CardStoredCredential
constructor
A new instance of CardStoredCredential.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(payment_initiator:, payment_type:, usage: StoredPaymentSourceUsageType::DERIVED, previous_network_transaction_reference: SKIP) ⇒ CardStoredCredential
Returns a new instance of CardStoredCredential.
62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 62 def initialize(payment_initiator:, payment_type:, usage: StoredPaymentSourceUsageType::DERIVED, previous_network_transaction_reference: SKIP) @payment_initiator = payment_initiator @payment_type = payment_type @usage = usage unless usage == SKIP unless previous_network_transaction_reference == SKIP @previous_network_transaction_reference = previous_network_transaction_reference end end |
Instance Attribute Details
#payment_initiator ⇒ PaymentInitiator
The person or party who initiated or triggered the payment.
23 24 25 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 23 def payment_initiator @payment_initiator end |
#payment_type ⇒ StoredPaymentSourcePaymentType
Indicates the type of the stored payment_source payment.
27 28 29 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 27 def payment_type @payment_type end |
#previous_network_transaction_reference ⇒ NetworkTransactionReference
Reference values used by the card network to identify a transaction.
36 37 38 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 36 def previous_network_transaction_reference @previous_network_transaction_reference end |
#usage ⇒ StoredPaymentSourceUsageType
Indicates if this is a ‘first` or `subsequent` payment using a stored payment source (also referred to as stored credential or card on file).
32 33 34 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 32 def usage @usage end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 75 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. payment_initiator = hash.key?('payment_initiator') ? hash['payment_initiator'] : nil payment_type = hash.key?('payment_type') ? hash['payment_type'] : nil usage = hash['usage'] ||= StoredPaymentSourceUsageType::DERIVED if hash['previous_network_transaction_reference'] previous_network_transaction_reference = NetworkTransactionReference.from_hash(hash['previous_network_transaction_reference']) end # Create object from extracted values. CardStoredCredential.new(payment_initiator: payment_initiator, payment_type: payment_type, usage: usage, previous_network_transaction_reference: previous_network_transaction_reference) end |
.names ⇒ Object
A mapping from model property names to API property names.
39 40 41 42 43 44 45 46 47 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 39 def self.names @_hash = {} if @_hash.nil? @_hash['payment_initiator'] = 'payment_initiator' @_hash['payment_type'] = 'payment_type' @_hash['usage'] = 'usage' @_hash['previous_network_transaction_reference'] = 'previous_network_transaction_reference' @_hash end |
.nullables ⇒ Object
An array for nullable fields
58 59 60 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 58 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
50 51 52 53 54 55 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 50 def self.optionals %w[ usage previous_network_transaction_reference ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
103 104 105 106 107 108 109 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 103 def inspect class_name = self.class.name.split('::').last "<#{class_name} payment_initiator: #{@payment_initiator.inspect}, payment_type:"\ " #{@payment_type.inspect}, usage: #{@usage.inspect},"\ ' previous_network_transaction_reference:'\ " #{@previous_network_transaction_reference.inspect}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
95 96 97 98 99 100 |
# File 'lib/paypal_server_sdk/models/card_stored_credential.rb', line 95 def to_s class_name = self.class.name.split('::').last "<#{class_name} payment_initiator: #{@payment_initiator}, payment_type: #{@payment_type},"\ " usage: #{@usage}, previous_network_transaction_reference:"\ " #{@previous_network_transaction_reference}>" end |