cybersource_rest_client 0.0.41 → 0.0.44
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/cybersource_rest_client/api/secure_file_share_api.rb +206 -206
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +10 -1
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +1 -1
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_issuer_information.rb +20 -4
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_insights_information.rb +183 -0
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_insights_information_response_insights.rb +206 -0
- data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +2 -2
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +20 -4
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +22 -6
- data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information_emv.rb +2 -8
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +14 -4
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_initiator.rb +2 -2
- data/lib/cybersource_rest_client/models/ptsv2paymentsid_processing_information_authorization_options_initiator.rb +2 -2
- data/lib/cybersource_rest_client/models/reporting_v3_chargeback_details_get200_response_chargeback_details.rb +14 -4
- data/lib/cybersource_rest_client/models/risk_v1_authentication_results_post201_response_consumer_authentication_information.rb +49 -1
- data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_consumer_authentication_information.rb +44 -2
- data/lib/cybersource_rest_client/models/riskv1authenticationresults_consumer_authentication_information.rb +35 -3
- data/lib/cybersource_rest_client/models/{tss_v2_transactions_post201_response__embedded_device_information.rb → riskv1authenticationresults_device_information.rb} +1 -1
- data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +1 -1
- data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +61 -2
- data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +1 -1
- data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +13 -3
- data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +1 -1
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +10 -1
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_customer.rb +1 -7
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +1 -1
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options_initiator.rb +213 -0
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information.rb +14 -5
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_bank.rb +183 -0
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_bank_account.rb +194 -0
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_customer.rb +184 -0
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +1 -1
- data/lib/cybersource_rest_client/models/validate_request.rb +13 -4
- data/lib/cybersource_rest_client.rb +7 -1
- metadata +9 -3
@@ -0,0 +1,183 @@
|
|
1
|
+
=begin
|
2
|
+
#CyberSource Merged Spec
|
3
|
+
|
4
|
+
#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
|
5
|
+
|
6
|
+
OpenAPI spec version: 0.0.1
|
7
|
+
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
Swagger Codegen version: 2.2.3
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module CyberSource
|
16
|
+
class PtsV2PaymentsPost201ResponsePaymentInsightsInformation
|
17
|
+
attr_accessor :response_insights
|
18
|
+
|
19
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
20
|
+
def self.attribute_map
|
21
|
+
{
|
22
|
+
:'response_insights' => :'responseInsights'
|
23
|
+
}
|
24
|
+
end
|
25
|
+
|
26
|
+
# Attribute type mapping.
|
27
|
+
def self.swagger_types
|
28
|
+
{
|
29
|
+
:'response_insights' => :'PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights'
|
30
|
+
}
|
31
|
+
end
|
32
|
+
|
33
|
+
# Initializes the object
|
34
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
35
|
+
def initialize(attributes = {})
|
36
|
+
return unless attributes.is_a?(Hash)
|
37
|
+
|
38
|
+
# convert string to symbol for hash key
|
39
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
40
|
+
|
41
|
+
if attributes.has_key?(:'responseInsights')
|
42
|
+
self.response_insights = attributes[:'responseInsights']
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
47
|
+
# @return Array for valid properties with the reasons
|
48
|
+
def list_invalid_properties
|
49
|
+
invalid_properties = Array.new
|
50
|
+
invalid_properties
|
51
|
+
end
|
52
|
+
|
53
|
+
# Check to see if the all the properties in the model are valid
|
54
|
+
# @return true if the model is valid
|
55
|
+
def valid?
|
56
|
+
true
|
57
|
+
end
|
58
|
+
|
59
|
+
# Checks equality by comparing each attribute.
|
60
|
+
# @param [Object] Object to be compared
|
61
|
+
def ==(o)
|
62
|
+
return true if self.equal?(o)
|
63
|
+
self.class == o.class &&
|
64
|
+
response_insights == o.response_insights
|
65
|
+
end
|
66
|
+
|
67
|
+
# @see the `==` method
|
68
|
+
# @param [Object] Object to be compared
|
69
|
+
def eql?(o)
|
70
|
+
self == o
|
71
|
+
end
|
72
|
+
|
73
|
+
# Calculates hash code according to all attributes.
|
74
|
+
# @return [Fixnum] Hash code
|
75
|
+
def hash
|
76
|
+
[response_insights].hash
|
77
|
+
end
|
78
|
+
|
79
|
+
# Builds the object from hash
|
80
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
81
|
+
# @return [Object] Returns the model itself
|
82
|
+
def build_from_hash(attributes)
|
83
|
+
return nil unless attributes.is_a?(Hash)
|
84
|
+
self.class.swagger_types.each_pair do |key, type|
|
85
|
+
if type =~ /\AArray<(.*)>/i
|
86
|
+
# check to ensure the input is an array given that the the attribute
|
87
|
+
# is documented as an array but the input is not
|
88
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
89
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
90
|
+
end
|
91
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
92
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
93
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
94
|
+
end
|
95
|
+
|
96
|
+
self
|
97
|
+
end
|
98
|
+
|
99
|
+
# Deserializes the data based on type
|
100
|
+
# @param string type Data type
|
101
|
+
# @param string value Value to be deserialized
|
102
|
+
# @return [Object] Deserialized data
|
103
|
+
def _deserialize(type, value)
|
104
|
+
case type.to_sym
|
105
|
+
when :DateTime
|
106
|
+
DateTime.parse(value)
|
107
|
+
when :Date
|
108
|
+
Date.parse(value)
|
109
|
+
when :String
|
110
|
+
value.to_s
|
111
|
+
when :Integer
|
112
|
+
value.to_i
|
113
|
+
when :Float
|
114
|
+
value.to_f
|
115
|
+
when :BOOLEAN
|
116
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
117
|
+
true
|
118
|
+
else
|
119
|
+
false
|
120
|
+
end
|
121
|
+
when :Object
|
122
|
+
# generic object (usually a Hash), return directly
|
123
|
+
value
|
124
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
125
|
+
inner_type = Regexp.last_match[:inner_type]
|
126
|
+
value.map { |v| _deserialize(inner_type, v) }
|
127
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
128
|
+
k_type = Regexp.last_match[:k_type]
|
129
|
+
v_type = Regexp.last_match[:v_type]
|
130
|
+
{}.tap do |hash|
|
131
|
+
value.each do |k, v|
|
132
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
133
|
+
end
|
134
|
+
end
|
135
|
+
else # model
|
136
|
+
temp_model = CyberSource.const_get(type).new
|
137
|
+
temp_model.build_from_hash(value)
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
# Returns the string representation of the object
|
142
|
+
# @return [String] String presentation of the object
|
143
|
+
def to_s
|
144
|
+
to_hash.to_s
|
145
|
+
end
|
146
|
+
|
147
|
+
# to_body is an alias to to_hash (backward compatibility)
|
148
|
+
# @return [Hash] Returns the object in the form of hash
|
149
|
+
def to_body
|
150
|
+
to_hash
|
151
|
+
end
|
152
|
+
|
153
|
+
# Returns the object in the form of hash
|
154
|
+
# @return [Hash] Returns the object in the form of hash
|
155
|
+
def to_hash
|
156
|
+
hash = {}
|
157
|
+
self.class.attribute_map.each_pair do |attr, param|
|
158
|
+
value = self.send(attr)
|
159
|
+
next if value.nil?
|
160
|
+
hash[param] = _to_hash(value)
|
161
|
+
end
|
162
|
+
hash
|
163
|
+
end
|
164
|
+
|
165
|
+
# Outputs non-array value in the form of hash
|
166
|
+
# For object, use to_hash. Otherwise, just return the value
|
167
|
+
# @param [Object] value Any valid value
|
168
|
+
# @return [Hash] Returns the value in the form of hash
|
169
|
+
def _to_hash(value)
|
170
|
+
if value.is_a?(Array)
|
171
|
+
value.compact.map { |v| _to_hash(v) }
|
172
|
+
elsif value.is_a?(Hash)
|
173
|
+
{}.tap do |hash|
|
174
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
175
|
+
end
|
176
|
+
elsif value.respond_to? :to_hash
|
177
|
+
value.to_hash
|
178
|
+
else
|
179
|
+
value
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
@@ -0,0 +1,206 @@
|
|
1
|
+
=begin
|
2
|
+
#CyberSource Merged Spec
|
3
|
+
|
4
|
+
#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
|
5
|
+
|
6
|
+
OpenAPI spec version: 0.0.1
|
7
|
+
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
Swagger Codegen version: 2.2.3
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module CyberSource
|
16
|
+
class PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights
|
17
|
+
# Categorization of response message from processor Possible Values: - `APPROVED` - `ISSUER_WILL_NEVER_APPROVE` - `ISSUER_CANT_APPROVE_AT_THIS_TIME` - `ISSUER_CANT_APPROVE_WITH_THESE_DETAILS` - `GENERIC_ERROR` - `OTHERS` - `MATCH_NOT_FOUND`
|
18
|
+
attr_accessor :category
|
19
|
+
|
20
|
+
# Categorization Code of response message from processor Possible Values: - `01` : Issuer Will Never Approve - `02` : Issuer Can't Approve at this Time - `03` : Issuer Can't Approve with these Details - `04` : Generic Error - `98` : Others - `99` : Payment Insights Response Category Match Not Found
|
21
|
+
attr_accessor :category_code
|
22
|
+
|
23
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
24
|
+
def self.attribute_map
|
25
|
+
{
|
26
|
+
:'category' => :'category',
|
27
|
+
:'category_code' => :'categoryCode'
|
28
|
+
}
|
29
|
+
end
|
30
|
+
|
31
|
+
# Attribute type mapping.
|
32
|
+
def self.swagger_types
|
33
|
+
{
|
34
|
+
:'category' => :'String',
|
35
|
+
:'category_code' => :'String'
|
36
|
+
}
|
37
|
+
end
|
38
|
+
|
39
|
+
# Initializes the object
|
40
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
41
|
+
def initialize(attributes = {})
|
42
|
+
return unless attributes.is_a?(Hash)
|
43
|
+
|
44
|
+
# convert string to symbol for hash key
|
45
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
46
|
+
|
47
|
+
if attributes.has_key?(:'category')
|
48
|
+
self.category = attributes[:'category']
|
49
|
+
end
|
50
|
+
|
51
|
+
if attributes.has_key?(:'categoryCode')
|
52
|
+
self.category_code = attributes[:'categoryCode']
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
57
|
+
# @return Array for valid properties with the reasons
|
58
|
+
def list_invalid_properties
|
59
|
+
invalid_properties = Array.new
|
60
|
+
invalid_properties
|
61
|
+
end
|
62
|
+
|
63
|
+
# Check to see if the all the properties in the model are valid
|
64
|
+
# @return true if the model is valid
|
65
|
+
def valid?
|
66
|
+
true
|
67
|
+
end
|
68
|
+
|
69
|
+
# Custom attribute writer method with validation
|
70
|
+
# @param [Object] category Value to be assigned
|
71
|
+
def category=(category)
|
72
|
+
@category = category
|
73
|
+
end
|
74
|
+
|
75
|
+
# Custom attribute writer method with validation
|
76
|
+
# @param [Object] category_code Value to be assigned
|
77
|
+
def category_code=(category_code)
|
78
|
+
@category_code = category_code
|
79
|
+
end
|
80
|
+
|
81
|
+
# Checks equality by comparing each attribute.
|
82
|
+
# @param [Object] Object to be compared
|
83
|
+
def ==(o)
|
84
|
+
return true if self.equal?(o)
|
85
|
+
self.class == o.class &&
|
86
|
+
category == o.category &&
|
87
|
+
category_code == o.category_code
|
88
|
+
end
|
89
|
+
|
90
|
+
# @see the `==` method
|
91
|
+
# @param [Object] Object to be compared
|
92
|
+
def eql?(o)
|
93
|
+
self == o
|
94
|
+
end
|
95
|
+
|
96
|
+
# Calculates hash code according to all attributes.
|
97
|
+
# @return [Fixnum] Hash code
|
98
|
+
def hash
|
99
|
+
[category, category_code].hash
|
100
|
+
end
|
101
|
+
|
102
|
+
# Builds the object from hash
|
103
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
104
|
+
# @return [Object] Returns the model itself
|
105
|
+
def build_from_hash(attributes)
|
106
|
+
return nil unless attributes.is_a?(Hash)
|
107
|
+
self.class.swagger_types.each_pair do |key, type|
|
108
|
+
if type =~ /\AArray<(.*)>/i
|
109
|
+
# check to ensure the input is an array given that the the attribute
|
110
|
+
# is documented as an array but the input is not
|
111
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
112
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
113
|
+
end
|
114
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
115
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
116
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
117
|
+
end
|
118
|
+
|
119
|
+
self
|
120
|
+
end
|
121
|
+
|
122
|
+
# Deserializes the data based on type
|
123
|
+
# @param string type Data type
|
124
|
+
# @param string value Value to be deserialized
|
125
|
+
# @return [Object] Deserialized data
|
126
|
+
def _deserialize(type, value)
|
127
|
+
case type.to_sym
|
128
|
+
when :DateTime
|
129
|
+
DateTime.parse(value)
|
130
|
+
when :Date
|
131
|
+
Date.parse(value)
|
132
|
+
when :String
|
133
|
+
value.to_s
|
134
|
+
when :Integer
|
135
|
+
value.to_i
|
136
|
+
when :Float
|
137
|
+
value.to_f
|
138
|
+
when :BOOLEAN
|
139
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
140
|
+
true
|
141
|
+
else
|
142
|
+
false
|
143
|
+
end
|
144
|
+
when :Object
|
145
|
+
# generic object (usually a Hash), return directly
|
146
|
+
value
|
147
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
148
|
+
inner_type = Regexp.last_match[:inner_type]
|
149
|
+
value.map { |v| _deserialize(inner_type, v) }
|
150
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
151
|
+
k_type = Regexp.last_match[:k_type]
|
152
|
+
v_type = Regexp.last_match[:v_type]
|
153
|
+
{}.tap do |hash|
|
154
|
+
value.each do |k, v|
|
155
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
156
|
+
end
|
157
|
+
end
|
158
|
+
else # model
|
159
|
+
temp_model = CyberSource.const_get(type).new
|
160
|
+
temp_model.build_from_hash(value)
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
# Returns the string representation of the object
|
165
|
+
# @return [String] String presentation of the object
|
166
|
+
def to_s
|
167
|
+
to_hash.to_s
|
168
|
+
end
|
169
|
+
|
170
|
+
# to_body is an alias to to_hash (backward compatibility)
|
171
|
+
# @return [Hash] Returns the object in the form of hash
|
172
|
+
def to_body
|
173
|
+
to_hash
|
174
|
+
end
|
175
|
+
|
176
|
+
# Returns the object in the form of hash
|
177
|
+
# @return [Hash] Returns the object in the form of hash
|
178
|
+
def to_hash
|
179
|
+
hash = {}
|
180
|
+
self.class.attribute_map.each_pair do |attr, param|
|
181
|
+
value = self.send(attr)
|
182
|
+
next if value.nil?
|
183
|
+
hash[param] = _to_hash(value)
|
184
|
+
end
|
185
|
+
hash
|
186
|
+
end
|
187
|
+
|
188
|
+
# Outputs non-array value in the form of hash
|
189
|
+
# For object, use to_hash. Otherwise, just return the value
|
190
|
+
# @param [Object] value Any valid value
|
191
|
+
# @return [Hash] Returns the value in the form of hash
|
192
|
+
def _to_hash(value)
|
193
|
+
if value.is_a?(Array)
|
194
|
+
value.compact.map { |v| _to_hash(v) }
|
195
|
+
elsif value.is_a?(Hash)
|
196
|
+
{}.tap do |hash|
|
197
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
198
|
+
end
|
199
|
+
elsif value.respond_to? :to_hash
|
200
|
+
value.to_hash
|
201
|
+
else
|
202
|
+
value
|
203
|
+
end
|
204
|
+
end
|
205
|
+
end
|
206
|
+
end
|
data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb
CHANGED
@@ -46,7 +46,7 @@ module CyberSource
|
|
46
46
|
# This field contains 3DS version that was used for Secured Consumer Authentication (SCA). For example 3DS secure version 1.0.2 or 2.0.0 is used for Secured Consumer Authentication. For Cybersource Through Visanet Gateway: The value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 113 , Field: MC AVV Verification—Program Protocol It will contain one of the following values: - `1` (3D Secure Version 1.0 (3DS 1.0)) - `2` (EMV 3-D Secure (3DS 2.0))
|
47
47
|
attr_accessor :pa_specification_version
|
48
48
|
|
49
|
-
# Indicates the type of authentication that will be used to challenge the card holder. Possible Values: 01 - Static 02 - Dynamic 03 - OOB (Out of Band) 04 - Decoupled **NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.
|
49
|
+
# Indicates the type of authentication that will be used to challenge the card holder. Possible Values: 01 - Static 02 - Dynamic 03 - OOB (Out of Band) 04 - Decoupled 20 - OTP hosted at merchant end. (Rupay S2S flow) **NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.
|
50
50
|
attr_accessor :authentication_type
|
51
51
|
|
52
52
|
# JWT returned by the 3D Secure provider when the authentication is complete. Required for Hybrid integration if you use the Cybersource-generated access token. Note: Max. length of this field is 2048 characters.
|
@@ -70,7 +70,7 @@ module CyberSource
|
|
70
70
|
# The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request payload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be provided by merchant in authorization request if calling an external 3DS provider. This field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC. Format: YYYYMMDDHHMMSS
|
71
71
|
attr_accessor :authentication_date
|
72
72
|
|
73
|
-
# Payer authentication transaction identifier passed to link the check enrollment and validate authentication messages. **Note**: Required for Standard integration for enroll service. Required for Hybrid integration for validate service.
|
73
|
+
# Payer authentication transaction identifier passed to link the check enrollment and validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase. **Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service. Required for Hybrid integration for validate service.
|
74
74
|
attr_accessor :authentication_transaction_id
|
75
75
|
|
76
76
|
# An indicator as to why the transaction was canceled. Possible Values: - `01`: Cardholder selected Cancel. - `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo). - `03`: Transaction Timed Out—Decoupled Authentication - `04`: Transaction timed out at ACS—other timeouts - `05`: Transaction Timed out at ACS - First CReq not received by ACS - `06`: Transaction Error - `07`: Unknown - `08`: Transaction Timed Out at SDK
|
@@ -56,6 +56,9 @@ module CyberSource
|
|
56
56
|
# Name of the card product. Possible value: - BNDES This field is supported only for BNDES transactions on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR4 - Position: 115-120 - Field: Brazil Country Data
|
57
57
|
attr_accessor :product_name
|
58
58
|
|
59
|
+
# Flag that identifies how the card type was selected. Possible values: - 0: Card type was selected based on default acquirer settings. - 1: Customer selected the card type.
|
60
|
+
attr_accessor :type_selection_indicator
|
61
|
+
|
59
62
|
# Attribute mapping from ruby-style variable name to JSON key.
|
60
63
|
def self.attribute_map
|
61
64
|
{
|
@@ -72,7 +75,8 @@ module CyberSource
|
|
72
75
|
:'issue_number' => :'issueNumber',
|
73
76
|
:'start_month' => :'startMonth',
|
74
77
|
:'start_year' => :'startYear',
|
75
|
-
:'product_name' => :'productName'
|
78
|
+
:'product_name' => :'productName',
|
79
|
+
:'type_selection_indicator' => :'typeSelectionIndicator'
|
76
80
|
}
|
77
81
|
end
|
78
82
|
|
@@ -92,7 +96,8 @@ module CyberSource
|
|
92
96
|
:'issue_number' => :'String',
|
93
97
|
:'start_month' => :'String',
|
94
98
|
:'start_year' => :'String',
|
95
|
-
:'product_name' => :'String'
|
99
|
+
:'product_name' => :'String',
|
100
|
+
:'type_selection_indicator' => :'String'
|
96
101
|
}
|
97
102
|
end
|
98
103
|
|
@@ -159,6 +164,10 @@ module CyberSource
|
|
159
164
|
if attributes.has_key?(:'productName')
|
160
165
|
self.product_name = attributes[:'productName']
|
161
166
|
end
|
167
|
+
|
168
|
+
if attributes.has_key?(:'typeSelectionIndicator')
|
169
|
+
self.type_selection_indicator = attributes[:'typeSelectionIndicator']
|
170
|
+
end
|
162
171
|
end
|
163
172
|
|
164
173
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -252,6 +261,12 @@ module CyberSource
|
|
252
261
|
@product_name = product_name
|
253
262
|
end
|
254
263
|
|
264
|
+
# Custom attribute writer method with validation
|
265
|
+
# @param [Object] type_selection_indicator Value to be assigned
|
266
|
+
def type_selection_indicator=(type_selection_indicator)
|
267
|
+
@type_selection_indicator = type_selection_indicator
|
268
|
+
end
|
269
|
+
|
255
270
|
# Checks equality by comparing each attribute.
|
256
271
|
# @param [Object] Object to be compared
|
257
272
|
def ==(o)
|
@@ -270,7 +285,8 @@ module CyberSource
|
|
270
285
|
issue_number == o.issue_number &&
|
271
286
|
start_month == o.start_month &&
|
272
287
|
start_year == o.start_year &&
|
273
|
-
product_name == o.product_name
|
288
|
+
product_name == o.product_name &&
|
289
|
+
type_selection_indicator == o.type_selection_indicator
|
274
290
|
end
|
275
291
|
|
276
292
|
# @see the `==` method
|
@@ -282,7 +298,7 @@ module CyberSource
|
|
282
298
|
# Calculates hash code according to all attributes.
|
283
299
|
# @return [Fixnum] Hash code
|
284
300
|
def hash
|
285
|
-
[number, expiration_month, expiration_year, type, use_as, source_account_type, source_account_type_details, security_code, security_code_indicator, account_encoder_id, issue_number, start_month, start_year, product_name].hash
|
301
|
+
[number, expiration_month, expiration_year, type, use_as, source_account_type, source_account_type_details, security_code, security_code_indicator, account_encoder_id, issue_number, start_month, start_year, product_name, type_selection_indicator].hash
|
286
302
|
end
|
287
303
|
|
288
304
|
# Builds the object from hash
|
@@ -26,13 +26,13 @@ module CyberSource
|
|
26
26
|
# Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `014`: Enroute[^1] - `021`: JAL[^1] - `024`: Maestro (UK Domestic)[^1] - `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types. - `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types. - `034`: Dankort[^1] - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `039`: Encoded account number[^1] - `040`: UATP[^1] - `042`: Maestro (International)[^1] - `050`: Hipercard[^2,3] - `051`: Aura - `054`: Elo[^3] - `062`: China UnionPay [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International
|
27
27
|
attr_accessor :type
|
28
28
|
|
29
|
-
# This field
|
29
|
+
# This field contains token information.
|
30
30
|
attr_accessor :cryptogram
|
31
31
|
|
32
32
|
# Value that identifies your business and indicates that the cardholder’s account number is tokenized. This value is assigned by the token service provider and is unique within the token service provider’s database. **Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**. #### PIN debit Optional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.
|
33
33
|
attr_accessor :requestor_id
|
34
34
|
|
35
|
-
# Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. #### Visa Platform Connect - `1`: In App tokenization. Example: InApp apple pay. - `3`: Card/Credential On File Tokenization. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.
|
35
|
+
# Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer’s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. #### Visa Platform Connect - `1`: For Rupay and In App tokenization. Example: InApp apple pay. - `3`: Card/Credential On File Tokenization. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.
|
36
36
|
attr_accessor :transaction_type
|
37
37
|
|
38
38
|
# Confidence level of the tokenization. This value is assigned by the token service provider. **Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**. Returned by PIN debit credit or PIN debit purchase.
|
@@ -44,6 +44,9 @@ module CyberSource
|
|
44
44
|
# Card Verification Number (CVN). #### Ingenico ePayments Do not include this field when **commerceIndicator=recurring**. **Note** Ingenico ePayments was previously called _Global Collect_. For details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)
|
45
45
|
attr_accessor :security_code
|
46
46
|
|
47
|
+
# Indicates whether a CVN code was sent. Possible values: - `0` (default): CVN service not requested. This default value is used when you do not include `securityCode` field in the request. - `1` (default): CVN service requested and supported. This default value is used when you include `securityCode` field in the request. - `2`: CVN on credit card is illegible. - `9`: CVN was not imprinted on credit card. #### FDMS Nashville Required for American Express cards; otherwise, optional. #### TSYS Acquiring Solutions Optional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used. #### All other processors Optional.
|
48
|
+
attr_accessor :security_code_indicator
|
49
|
+
|
47
50
|
# Attribute mapping from ruby-style variable name to JSON key.
|
48
51
|
def self.attribute_map
|
49
52
|
{
|
@@ -56,7 +59,8 @@ module CyberSource
|
|
56
59
|
:'transaction_type' => :'transactionType',
|
57
60
|
:'assurance_level' => :'assuranceLevel',
|
58
61
|
:'storage_method' => :'storageMethod',
|
59
|
-
:'security_code' => :'securityCode'
|
62
|
+
:'security_code' => :'securityCode',
|
63
|
+
:'security_code_indicator' => :'securityCodeIndicator'
|
60
64
|
}
|
61
65
|
end
|
62
66
|
|
@@ -72,7 +76,8 @@ module CyberSource
|
|
72
76
|
:'transaction_type' => :'String',
|
73
77
|
:'assurance_level' => :'String',
|
74
78
|
:'storage_method' => :'String',
|
75
|
-
:'security_code' => :'String'
|
79
|
+
:'security_code' => :'String',
|
80
|
+
:'security_code_indicator' => :'String'
|
76
81
|
}
|
77
82
|
end
|
78
83
|
|
@@ -123,6 +128,10 @@ module CyberSource
|
|
123
128
|
if attributes.has_key?(:'securityCode')
|
124
129
|
self.security_code = attributes[:'securityCode']
|
125
130
|
end
|
131
|
+
|
132
|
+
if attributes.has_key?(:'securityCodeIndicator')
|
133
|
+
self.security_code_indicator = attributes[:'securityCodeIndicator']
|
134
|
+
end
|
126
135
|
end
|
127
136
|
|
128
137
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -192,6 +201,12 @@ module CyberSource
|
|
192
201
|
@security_code = security_code
|
193
202
|
end
|
194
203
|
|
204
|
+
# Custom attribute writer method with validation
|
205
|
+
# @param [Object] security_code_indicator Value to be assigned
|
206
|
+
def security_code_indicator=(security_code_indicator)
|
207
|
+
@security_code_indicator = security_code_indicator
|
208
|
+
end
|
209
|
+
|
195
210
|
# Checks equality by comparing each attribute.
|
196
211
|
# @param [Object] Object to be compared
|
197
212
|
def ==(o)
|
@@ -206,7 +221,8 @@ module CyberSource
|
|
206
221
|
transaction_type == o.transaction_type &&
|
207
222
|
assurance_level == o.assurance_level &&
|
208
223
|
storage_method == o.storage_method &&
|
209
|
-
security_code == o.security_code
|
224
|
+
security_code == o.security_code &&
|
225
|
+
security_code_indicator == o.security_code_indicator
|
210
226
|
end
|
211
227
|
|
212
228
|
# @see the `==` method
|
@@ -218,7 +234,7 @@ module CyberSource
|
|
218
234
|
# Calculates hash code according to all attributes.
|
219
235
|
# @return [Fixnum] Hash code
|
220
236
|
def hash
|
221
|
-
[number, expiration_month, expiration_year, type, cryptogram, requestor_id, transaction_type, assurance_level, storage_method, security_code].hash
|
237
|
+
[number, expiration_month, expiration_year, type, cryptogram, requestor_id, transaction_type, assurance_level, storage_method, security_code, security_code_indicator].hash
|
222
238
|
end
|
223
239
|
|
224
240
|
# Builds the object from hash
|
@@ -29,7 +29,7 @@ module CyberSource
|
|
29
29
|
# Reason for the EMV fallback transaction. An EMV fallback transaction occurs when an EMV transaction fails for one of these reasons: - Technical failure: the EMV terminal or EMV card cannot read and process chip data. - Empty candidate list failure: the EMV terminal does not have any applications in common with the EMV card. EMV terminals are coded to determine whether the terminal and EMV card have any applications in common. EMV terminals provide this information to you. Possible values: - `1`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the EMV terminal either used information from a successful chip read or it was not a chip transaction. - `2`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the EMV terminal was an EMV fallback transaction because the attempted chip read was unsuccessful. This field is supported only on **GPN** and **JCN Gateway**. **NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field when the EMV terminal does not have any applications in common with the EMV card.
|
30
30
|
attr_accessor :fallback_condition
|
31
31
|
|
32
|
-
# #### Visa Platform Connect Value
|
32
|
+
# #### Visa Platform Connect Value “true” indicates this transaction is intentionally duplicated . The field contains value “true” which indicates that merchant has intentionally duplicated single tap transaction. Merchant is intentionally sending a duplicate auth request for a single tap txn because the issuer requested a PIN.
|
33
33
|
attr_accessor :is_repeat
|
34
34
|
|
35
35
|
# Attribute mapping from ruby-style variable name to JSON key.
|
@@ -52,7 +52,7 @@ module CyberSource
|
|
52
52
|
:'card_sequence_number' => :'String',
|
53
53
|
:'fallback' => :'BOOLEAN',
|
54
54
|
:'fallback_condition' => :'Integer',
|
55
|
-
:'is_repeat' => :'
|
55
|
+
:'is_repeat' => :'BOOLEAN'
|
56
56
|
}
|
57
57
|
end
|
58
58
|
|
@@ -114,12 +114,6 @@ module CyberSource
|
|
114
114
|
@card_sequence_number = card_sequence_number
|
115
115
|
end
|
116
116
|
|
117
|
-
# Custom attribute writer method with validation
|
118
|
-
# @param [Object] is_repeat Value to be assigned
|
119
|
-
def is_repeat=(is_repeat)
|
120
|
-
@is_repeat = is_repeat
|
121
|
-
end
|
122
|
-
|
123
117
|
# Checks equality by comparing each attribute.
|
124
118
|
# @param [Object] Object to be compared
|
125
119
|
def ==(o)
|
@@ -87,6 +87,9 @@ module CyberSource
|
|
87
87
|
# Flag that indicates if the transaction is pay by points transaction true: Transaction uses loyalty points false: Transaction does not use loyalty points Default: false
|
88
88
|
attr_accessor :pay_by_points_indicator
|
89
89
|
|
90
|
+
# Flag that indicates the functionality we are having for merchants for which auth is done through Cybersource but settlement is done by themselves. true: functionality is supported. Processor should send raw processor auth response to Merchant. false: functionality is not supported. Default: false
|
91
|
+
attr_accessor :is_return_auth_record_enabled
|
92
|
+
|
90
93
|
# Attribute mapping from ruby-style variable name to JSON key.
|
91
94
|
def self.attribute_map
|
92
95
|
{
|
@@ -116,7 +119,8 @@ module CyberSource
|
|
116
119
|
:'mobile_remote_payment_type' => :'mobileRemotePaymentType',
|
117
120
|
:'extended_credit_total_count' => :'extendedCreditTotalCount',
|
118
121
|
:'network_routing_order' => :'networkRoutingOrder',
|
119
|
-
:'pay_by_points_indicator' => :'payByPointsIndicator'
|
122
|
+
:'pay_by_points_indicator' => :'payByPointsIndicator',
|
123
|
+
:'is_return_auth_record_enabled' => :'isReturnAuthRecordEnabled'
|
120
124
|
}
|
121
125
|
end
|
122
126
|
|
@@ -149,7 +153,8 @@ module CyberSource
|
|
149
153
|
:'mobile_remote_payment_type' => :'String',
|
150
154
|
:'extended_credit_total_count' => :'String',
|
151
155
|
:'network_routing_order' => :'String',
|
152
|
-
:'pay_by_points_indicator' => :'BOOLEAN'
|
156
|
+
:'pay_by_points_indicator' => :'BOOLEAN',
|
157
|
+
:'is_return_auth_record_enabled' => :'BOOLEAN'
|
153
158
|
}
|
154
159
|
end
|
155
160
|
|
@@ -274,6 +279,10 @@ module CyberSource
|
|
274
279
|
if attributes.has_key?(:'payByPointsIndicator')
|
275
280
|
self.pay_by_points_indicator = attributes[:'payByPointsIndicator']
|
276
281
|
end
|
282
|
+
|
283
|
+
if attributes.has_key?(:'isReturnAuthRecordEnabled')
|
284
|
+
self.is_return_auth_record_enabled = attributes[:'isReturnAuthRecordEnabled']
|
285
|
+
end
|
277
286
|
end
|
278
287
|
|
279
288
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -404,7 +413,8 @@ module CyberSource
|
|
404
413
|
mobile_remote_payment_type == o.mobile_remote_payment_type &&
|
405
414
|
extended_credit_total_count == o.extended_credit_total_count &&
|
406
415
|
network_routing_order == o.network_routing_order &&
|
407
|
-
pay_by_points_indicator == o.pay_by_points_indicator
|
416
|
+
pay_by_points_indicator == o.pay_by_points_indicator &&
|
417
|
+
is_return_auth_record_enabled == o.is_return_auth_record_enabled
|
408
418
|
end
|
409
419
|
|
410
420
|
# @see the `==` method
|
@@ -416,7 +426,7 @@ module CyberSource
|
|
416
426
|
# Calculates hash code according to all attributes.
|
417
427
|
# @return [Fixnum] Hash code
|
418
428
|
def hash
|
419
|
-
[action_list, action_token_types, capture, processor_id, business_application_id, commerce_indicator, payment_solution, reconciliation_id, link_id, purchase_level, report_group, visa_checkout_id, industry_data_type, authorization_options, capture_options, recurring_options, bank_transfer_options, purchase_options, electronic_benefits_transfer, loan_options, wallet_type, national_net_domestic_data, japan_payment_options, mobile_remote_payment_type, extended_credit_total_count, network_routing_order, pay_by_points_indicator].hash
|
429
|
+
[action_list, action_token_types, capture, processor_id, business_application_id, commerce_indicator, payment_solution, reconciliation_id, link_id, purchase_level, report_group, visa_checkout_id, industry_data_type, authorization_options, capture_options, recurring_options, bank_transfer_options, purchase_options, electronic_benefits_transfer, loan_options, wallet_type, national_net_domestic_data, japan_payment_options, mobile_remote_payment_type, extended_credit_total_count, network_routing_order, pay_by_points_indicator, is_return_auth_record_enabled].hash
|
420
430
|
end
|
421
431
|
|
422
432
|
# Builds the object from hash
|