Class: CyberSourceMergedSpec::AmountDetails23
- Inherits:
-
BaseModel
- Object
- CoreLibrary::BaseModel
- BaseModel
- CyberSourceMergedSpec::AmountDetails23
- Defined in:
- lib/cyber_source_merged_spec/models/amount_details23.rb
Overview
AmountDetails23 Model.
Instance Attribute Summary collapse
-
#currency ⇒ String
Currency used for the order.
-
#total_amount ⇒ String
Grand total for the order.
-
#total_max_amount ⇒ String
Maximum amount that may be collected from the customer's account.
Class Method Summary collapse
- .from_element(root) ⇒ Object
-
.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(total_amount: SKIP, currency: SKIP, total_max_amount: SKIP, additional_properties: nil) ⇒ AmountDetails23
constructor
A new instance of AmountDetails23.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
- #to_xml_element(doc, root_name) ⇒ 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(total_amount: SKIP, currency: SKIP, total_max_amount: SKIP, additional_properties: nil) ⇒ AmountDetails23
Returns a new instance of AmountDetails23.
111 112 113 114 115 116 117 118 119 120 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 111 def initialize(total_amount: SKIP, currency: SKIP, total_max_amount: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @total_amount = total_amount unless total_amount == SKIP @currency = currency unless currency == SKIP @total_max_amount = total_max_amount unless total_max_amount == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#currency ⇒ String
Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/cur rencies.pdf)
Used by
Authorization
Required field.
Authorization Reversal
For an authorization reversal (reversalInformation) or a capture
(processingOptions.capture is set to true), you must use the same
currency that you used in your payment authorization request.
PIN Debit
Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickre f/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickre f/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests.
GPX
This field is optional for reversing an authorization or credit.
DCC for First Data
Your local currency.
Tax Calculation
Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency.
82 83 84 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 82 def currency @currency end |
#total_amount ⇒ String
Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters. CyberSource truncates the amount to the correct number of decimal places. Note For CTV, FDCCompass, Paymentech processors, the maximum length for this field is 12. Important Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths. If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen.
Card Present
Required to include either this field or
orderInformation.lineItems[].unitPrice for the order.
Invoicing / Pay By Link
Required for creating a new invoice or payment link.
PIN Debit
Amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests.
GPX
This field is optional for reversing an authorization or credit; however, for all other processors, these fields are required.
DCC with a Third-Party Provider
Set this field to the converted amount that was returned by the DCC provider. You must include either this field or the 1st line item in the order and the specific line-order amount in your request.
DCC for First Data
Not used.
43 44 45 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 43 def total_amount @total_amount end |
#total_max_amount ⇒ String
Maximum amount that may be collected from the customer's account.
86 87 88 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 86 def total_max_amount @total_max_amount end |
Class Method Details
.from_element(root) ⇒ Object
146 147 148 149 150 151 152 153 154 155 156 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 146 def self.from_element(root) total_amount = XmlUtilities.from_element(root, 'totalAmount', String) currency = XmlUtilities.from_element(root, 'currency', String) total_max_amount = XmlUtilities.from_element(root, 'totalMaxAmount', String) new(total_amount: total_amount, currency: currency, total_max_amount: total_max_amount, additional_properties: additional_properties) end |
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 123 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. total_amount = hash.key?('totalAmount') ? hash['totalAmount'] : SKIP currency = hash.key?('currency') ? hash['currency'] : SKIP total_max_amount = hash.key?('totalMaxAmount') ? hash['totalMaxAmount'] : SKIP # Create a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. AmountDetails23.new(total_amount: total_amount, currency: currency, total_max_amount: total_max_amount, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
89 90 91 92 93 94 95 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 89 def self.names @_hash = {} if @_hash.nil? @_hash['total_amount'] = 'totalAmount' @_hash['currency'] = 'currency' @_hash['total_max_amount'] = 'totalMaxAmount' @_hash end |
.nullables ⇒ Object
An array for nullable fields
107 108 109 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 107 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
98 99 100 101 102 103 104 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 98 def self.optionals %w[ total_amount currency total_max_amount ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
179 180 181 182 183 184 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 179 def inspect class_name = self.class.name.split('::').last "<#{class_name} total_amount: #{@total_amount.inspect}, currency: #{@currency.inspect},"\ " total_max_amount: #{@total_max_amount.inspect}, additional_properties:"\ " #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
172 173 174 175 176 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 172 def to_s class_name = self.class.name.split('::').last "<#{class_name} total_amount: #{@total_amount}, currency: #{@currency}, total_max_amount:"\ " #{@total_max_amount}, additional_properties: #{@additional_properties}>" end |
#to_xml_element(doc, root_name) ⇒ Object
158 159 160 161 162 163 164 165 166 167 168 169 |
# File 'lib/cyber_source_merged_spec/models/amount_details23.rb', line 158 def to_xml_element(doc, root_name) root = doc.create_element(root_name) XmlUtilities.add_as_subelement(doc, root, 'totalAmount', total_amount) XmlUtilities.add_as_subelement(doc, root, 'currency', currency) XmlUtilities.add_as_subelement(doc, root, 'totalMaxAmount', total_max_amount) XmlUtilities.add_as_subelement(doc, root, 'additional_properties', additional_properties) root end |