LitleOnline 8.25.1 → 8.29.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +10 -2
  3. data/README.md +2 -22
  4. data/Rakefile +2 -2
  5. data/accurev_plugin.log +1037 -0
  6. data/bin/sample_batch_driver.rb +1 -0
  7. data/bin/sample_driver.rb +4 -4
  8. data/lib/Configuration.rb +2 -2
  9. data/lib/EnvironmentVariables.rb +2 -1
  10. data/lib/LitleBatchRequest.rb +16 -3
  11. data/lib/LitleOnlineRequest.rb +2 -2
  12. data/lib/LitleRequest.rb +8 -4
  13. data/lib/LitleTransaction.rb +10 -6
  14. data/lib/XMLFields.rb +203 -159
  15. data/samples/Auth/LitleAuthReversalTransaction.rb +15 -0
  16. data/samples/Auth/LitleAuthorizationTransaction.rb +31 -0
  17. data/samples/Auth/LitlePaymentFullLifeCycle.rb +47 -0
  18. data/samples/Batch/AccountUpdate.rb +64 -0
  19. data/samples/Batch/SampleBatchDriver.rb +94 -0
  20. data/samples/Capture/LitleCaptureGivenAuthTransaction.rb +30 -0
  21. data/samples/Capture/LitleCaptureTransaction.rb +14 -0
  22. data/samples/Capture/LitleForceCaptureTransaction.rb +26 -0
  23. data/samples/Capture/LitlePartialCapture.rb +16 -0
  24. data/samples/Credit/LitleCreditTransaction.rb +16 -0
  25. data/samples/Credit/LitleRefundTransaction.rb +29 -0
  26. data/samples/Other/LitleAvsTransaction.rb +34 -0
  27. data/samples/Other/LitleVoidTransaction.rb +18 -0
  28. data/samples/Paypage/FullPaypageLifeCycle.rb +74 -0
  29. data/samples/Run_all.rb +17 -0
  30. data/samples/Sale/LitleSaleTransaction.rb +29 -0
  31. data/samples/Sale/SampleSaleTransaction.rb +24 -0
  32. data/test/functional/test_auth.rb +54 -30
  33. data/test/functional/test_captureGivenAuth.rb +41 -18
  34. data/test/functional/test_credit.rb +17 -0
  35. data/test/functional/test_echeckCredit.rb +23 -6
  36. data/test/functional/test_echeckSale.rb +27 -10
  37. data/test/functional/test_forceCapture.rb +19 -0
  38. data/test/functional/test_sale.rb +44 -19
  39. data/test/functional/test_token.rb +27 -5
  40. data/test/unit/test_LitleOnlineRequest.rb +2 -2
  41. data/test/unit/test_activate.rb +1 -1
  42. data/test/unit/test_activateReversal.rb +1 -1
  43. data/test/unit/test_auth.rb +104 -41
  44. data/test/unit/test_balanceInquiry.rb +1 -1
  45. data/test/unit/test_cancelSubscription.rb +1 -1
  46. data/test/unit/test_captureGivenAuth.rb +31 -22
  47. data/test/unit/test_createPlan.rb +1 -1
  48. data/test/unit/test_credit.rb +61 -39
  49. data/test/unit/test_deactivate.rb +1 -1
  50. data/test/unit/test_deactivateReversal.rb +1 -1
  51. data/test/unit/test_depositReversal.rb +1 -1
  52. data/test/unit/test_echeckCredit.rb +18 -5
  53. data/test/unit/test_echeckRedeposit.rb +1 -1
  54. data/test/unit/test_echeckSale.rb +14 -1
  55. data/test/unit/test_echeckVerification.rb +1 -1
  56. data/test/unit/test_echeckVoid.rb +1 -1
  57. data/test/unit/test_forceCapture.rb +11 -0
  58. data/test/unit/test_load.rb +1 -1
  59. data/test/unit/test_loadReversal.rb +1 -1
  60. data/test/unit/test_refundReversal.rb +1 -1
  61. data/test/unit/test_sale.rb +113 -55
  62. data/test/unit/test_token.rb +53 -7
  63. data/test/unit/test_unload.rb +1 -1
  64. data/test/unit/test_unloadReversal.rb +1 -1
  65. data/test/unit/test_updateCardValidationNumOnToken.rb +1 -1
  66. data/test/unit/test_updatePlan.rb +1 -1
  67. data/test/unit/test_xmlfields.rb +2 -2
  68. metadata +22 -4
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env ruby
1
2
  =begin
2
3
  Copyright (c) 2011 Litle & Co.
3
4
 
@@ -26,8 +26,9 @@ OTHER DEALINGS IN THE SOFTWARE.
26
26
  =end
27
27
 
28
28
  #Sample Driver
29
- require 'LitleOnline'
30
-
29
+ #require 'LitleOnline'
30
+ #include LitleOnline
31
+ require_relative '../lib/LitleOnline'
31
32
  hash = {
32
33
  'reportGroup'=>'product1',
33
34
  'orderId'=>'12344',
@@ -41,9 +42,8 @@ hash = {
41
42
  }
42
43
 
43
44
  #perform credit transaction
44
- response= LitleOnlineRequest.new.credit(hash)
45
+ response= LitleOnline::LitleOnlineRequest.new.credit(hash)
45
46
 
46
47
  #display results
47
-
48
48
  puts "Message: "+response.message
49
49
  puts "Litle Transaction ID: "+response.creditResponse.litleTxnId
@@ -27,7 +27,7 @@ require 'yaml'
27
27
  #
28
28
  # Loads the configuration from a file
29
29
  #
30
- module LitleOnline
30
+ module LitleOnline
31
31
  class Configuration
32
32
  class << self
33
33
  # External logger, if specified
@@ -64,4 +64,4 @@ require 'yaml'
64
64
 
65
65
  end
66
66
 
67
- end
67
+ end
@@ -17,5 +17,6 @@ module LitleOnline
17
17
  @printxml=false
18
18
  @timeout=65
19
19
  end
20
+
20
21
  end
21
- end
22
+ end
@@ -104,6 +104,10 @@ module LitleOnline
104
104
  end
105
105
  end
106
106
 
107
+ def has_transactions?
108
+ !@txn_counts[:total].eql?(0)
109
+ end
110
+
107
111
  def open_existing_batch(pathToBatchFile)
108
112
  if(!File.file?(pathToBatchFile)) then
109
113
  raise ArgumentError, "No batch file exists at the passed location!"
@@ -128,21 +132,30 @@ module LitleOnline
128
132
  end
129
133
  end
130
134
 
135
+
136
+ def au_batch?
137
+ !@au_batch.nil?
138
+ end
139
+
131
140
  def close_batch(txn_location = @txn_file)
132
141
  header = build_batch_header(@txn_counts)
133
142
  File.rename(@path_to_batch, @path_to_batch + '.closed-' + @txn_counts[:total].to_s)
134
143
  @path_to_batch = @path_to_batch + '.closed-' + @txn_counts[:total].to_s
135
144
  File.open(@path_to_batch, 'w') do |fo|
136
- fo.puts header
145
+ # fo.puts header
146
+ put_header = !au_batch? || has_transactions?
147
+ fo.puts header if put_header
137
148
  File.foreach(txn_location) do |li|
138
149
  fo.puts li
139
150
  end
140
- fo.puts('</batchRequest>')
151
+ # fo.puts('</batchRequest>')
152
+ fo.puts('</batchRequest>') if put_header
141
153
  end
142
154
  File.delete(txn_location)
143
155
  if(@au_batch != nil) then
144
156
  @au_batch.close_batch
145
157
  end
158
+
146
159
  end
147
160
 
148
161
  def authorization(options)
@@ -171,7 +184,7 @@ module LitleOnline
171
184
 
172
185
  def auth_reversal(options)
173
186
  transaction = @litle_txn.auth_reversal(options)
174
- @txn_counts[:authReversal][:numAuthReversals] += 1
187
+ @txn_counts[:authReversal][:numAuthReversals] += 1
175
188
  @txn_counts[:authReversal][:authReversalAmount] += options['amount'].to_i
176
189
 
177
190
  add_txn_to_batch(transaction, :authReversal, options)
@@ -252,7 +252,7 @@ module LitleOnline
252
252
 
253
253
  request.authentication = authentication
254
254
  request.merchantId = get_merchant_id(options)
255
- request.version = '8.25'
255
+ request.version = '8.29'
256
256
  request.loggedInUser = get_logged_in_user(options)
257
257
  request.xmlns = "http://www.litle.com/schema"
258
258
  request.merchantSdk = get_merchant_sdk(options)
@@ -283,7 +283,7 @@ module LitleOnline
283
283
  end
284
284
 
285
285
  def get_merchant_sdk(options)
286
- options['merchantSdk'] || 'Ruby;8.25.0'
286
+ options['merchantSdk'] || 'Ruby;8.29.0'
287
287
  end
288
288
 
289
289
  def get_report_group(options)
@@ -142,13 +142,14 @@ module LitleOnline
142
142
  initialize(@options)
143
143
  create_new_litle_request
144
144
  else #otherwise, let's add it line by line to the request doc
145
- @num_batch_requests += 1
145
+ # @num_batch_requests += 1
146
146
  #how long we wnat to wait around for the FTP server to get us a response
147
147
  @RESPONSE_TIME_OUT += 90 + (transactions_in_batch * 0.25)
148
148
  #don't start looking until there could possibly be a response
149
149
  @POLL_DELAY += 30 +(transactions_in_batch * 0.02)
150
150
  @num_total_transactions += transactions_in_batch
151
-
151
+ # Don't add empty batches
152
+ @num_batch_requests += 1 unless transactions_in_batch.eql?(0)
152
153
  File.open(@path_to_batches, 'a+') do |fo|
153
154
  File.foreach(path_to_batch) do |li|
154
155
  fo.puts li
@@ -190,7 +191,7 @@ module LitleOnline
190
191
  litleRequest.authentication = authentication
191
192
  litleRequest.numBatchRequests = "0"
192
193
 
193
- litleRequest.version = '8.25'
194
+ litleRequest.version = '8.29'
194
195
  litleRequest.xmlns = "http://www.litle.com/schema"
195
196
 
196
197
 
@@ -233,7 +234,9 @@ module LitleOnline
233
234
  def send_to_litle(path = (File.dirname(@path_to_batches)), options = {})
234
235
  username = get_config(:sftp_username, options)
235
236
  password = get_config(:sftp_password, options)
237
+
236
238
  url = get_config(:sftp_url, options)
239
+
237
240
  if(username == nil or password == nil or url == nil) then
238
241
  raise ArgumentError, "You are not configured to use sFTP for batch processing. Please run /bin/Setup.rb again!"
239
242
  end
@@ -244,6 +247,7 @@ module LitleOnline
244
247
 
245
248
  begin
246
249
  Net::SFTP.start(url, username, :password => password) do |sftp|
250
+
247
251
  # our folder is /SHORTNAME/SHORTNAME/INBOUND
248
252
  Dir.foreach(path) do |filename|
249
253
  #we have a complete report according to filename regex
@@ -495,7 +499,7 @@ module LitleOnline
495
499
  authentication.password = get_config(:password, options)
496
500
 
497
501
  litle_request.authentication = authentication
498
- litle_request.version = '8.25'
502
+ litle_request.version = '8.29'
499
503
  litle_request.xmlns = "http://www.litle.com/schema"
500
504
  # litle_request.id = options['sessionId'] #grab from options; okay if nil
501
505
  litle_request.numBatchRequests = @num_batch_requests
@@ -34,6 +34,7 @@ module LitleOnline
34
34
  class LitleTransaction
35
35
  def authorization(options)
36
36
  transaction = Authorization.new
37
+ transaction.secondaryAmount = options['secondaryAmount']
37
38
  transaction.surchargeAmount = options['surchargeAmount']
38
39
  transaction.recurringRequest = RecurringRequest.from_hash(options,'recurringRequest')
39
40
  transaction.debtRepayment = options['debtRepayment']
@@ -192,7 +193,7 @@ module LitleOnline
192
193
  def sale(options)
193
194
  transaction = Sale.new
194
195
  add_transaction_info(transaction, options)
195
-
196
+ transaction.secondaryAmount = options['secondaryAmount']
196
197
  transaction.surchargeAmount = options['surchargeAmount']
197
198
  transaction.fraudCheck = FraudCheck.from_hash(options,'fraudCheck')
198
199
  transaction.payPalOrderComplete = options['payPalOrderComplete']
@@ -219,6 +220,7 @@ module LitleOnline
219
220
  transaction.mpos = Mpos.from_hash(options,'mpos')
220
221
  end
221
222
  transaction.amount = options['amount']
223
+ transaction.secondaryAmount = options['secondaryAmount']
222
224
  transaction.surchargeAmount = options['surchargeAmount']
223
225
  transaction.customBilling = CustomBilling.from_hash(options)
224
226
  transaction.enhancedData = EnhancedData.from_hash(options)
@@ -253,7 +255,7 @@ module LitleOnline
253
255
  transaction.accountNumber = options['accountNumber']
254
256
  transaction.echeckForToken = EcheckForToken.from_hash(options)
255
257
  transaction.paypageRegistrationId = options['paypageRegistrationId']
256
-
258
+ transaction.applepay = Applepay.from_hash(options,'applepay')
257
259
  add_account_info(transaction, options)
258
260
  return transaction
259
261
  end
@@ -274,6 +276,7 @@ module LitleOnline
274
276
 
275
277
  def force_capture(options)
276
278
  transaction = ForceCapture.new
279
+ transaction.secondaryAmount = options['secondaryAmount']
277
280
  transaction.surchargeAmount = options['surchargeAmount']
278
281
  transaction.customBilling = CustomBilling.from_hash(options)
279
282
  transaction.debtRepayment = options['debtRepayment']
@@ -301,7 +304,7 @@ module LitleOnline
301
304
  def capture_given_auth(options)
302
305
  transaction = CaptureGivenAuth.new
303
306
  add_order_info(transaction, options)
304
-
307
+ transaction.secondaryAmount = options['secondaryAmount']
305
308
  transaction.surchargeAmount = options['surchargeAmount']
306
309
  transaction.authInformation = AuthInformation.from_hash(options)
307
310
  transaction.shipToAddress = Contact.from_hash(options,'shipToAddress')
@@ -335,7 +338,7 @@ module LitleOnline
335
338
  transaction = EcheckSale.new
336
339
  add_echeck(transaction, options)
337
340
  add_echeck_order_info(transaction, options)
338
-
341
+ transaction.secondaryAmount = options['secondaryAmount']
339
342
  transaction.verify = options['verify']
340
343
  transaction.shipToAddress = Contact.from_hash(options,'shipToAddress')
341
344
  transaction.customBilling = CustomBilling.from_hash(options)
@@ -346,7 +349,7 @@ module LitleOnline
346
349
  def echeck_credit(options)
347
350
  transaction = EcheckCredit.new
348
351
  transaction.customBilling = CustomBilling.from_hash(options)
349
-
352
+ transaction.secondaryAmount = options['secondaryAmount']
350
353
  add_echeck_order_info(transaction, options)
351
354
  add_echeck(transaction, options)
352
355
 
@@ -395,7 +398,7 @@ module LitleOnline
395
398
  transaction.customerInfo = CustomerInfo.from_hash(options)
396
399
  transaction.shipToAddress = Contact.from_hash(options,'shipToAddress')
397
400
  transaction.billMeLaterRequest = BillMeLaterRequest.from_hash(options)
398
- transaction.cardholderAuthentication = FraudCheck.from_hash(options)
401
+ transaction.cardholderAuthentication = FraudCheck.from_hash(options, 'cardholderAuthentication')
399
402
  transaction.allowPartialAuth = options['allowPartialAuth']
400
403
  transaction.healthcareIIAS = HealthcareIIAS.from_hash(options)
401
404
  transaction.filtering = Filtering.from_hash(options)
@@ -404,6 +407,7 @@ module LitleOnline
404
407
  transaction.fraudFilterOverride = options['fraudFilterOverride']
405
408
  transaction.customBilling = CustomBilling.from_hash(options)
406
409
  transaction.paypal = PayPal.from_hash(options,'paypal')
410
+ transaction.applepay = Applepay.from_hash(options,'applepay')
407
411
 
408
412
  add_order_info(transaction, options)
409
413
  end
@@ -47,17 +47,16 @@ module LitleOnline
47
47
  end
48
48
  end
49
49
  end
50
-
50
+
51
51
  XML::Mapping.add_node_class OptionalChoiceNode
52
-
52
+
53
53
  class Authentication
54
54
  include XML::Mapping
55
55
  text_node :user, "user"
56
56
  text_node :password, "password"
57
57
  end
58
-
58
+
59
59
  class SchemaValidation
60
-
61
60
  def self.validate_required(value, required, class_name, field_name)
62
61
  if(required)
63
62
  if(value.nil?)
@@ -65,7 +64,7 @@ module LitleOnline
65
64
  end
66
65
  end
67
66
  end
68
-
67
+
69
68
  def self.validate_length(value, required, min, max, class_name, field_name)
70
69
  validate_required(value, required, class_name, field_name)
71
70
  if(value.nil?)
@@ -75,7 +74,7 @@ module LitleOnline
75
74
  raise "If " + class_name + " " + field_name + " is specified, it must be between " + min.to_s + " and " + max.to_s + " characters long"
76
75
  end
77
76
  end
78
-
77
+
79
78
  def self.validate_size(value, required, min, max, class_name, field_name)
80
79
  validate_required(value, required, class_name, field_name)
81
80
  if(value.nil?)
@@ -85,7 +84,7 @@ module LitleOnline
85
84
  raise "If " + class_name + " " + field_name + " is specified, it must be between " + min.to_s + " and " + max.to_s
86
85
  end
87
86
  end
88
-
87
+
89
88
  def self.validate_country(value, class_name, field_name)
90
89
  if(value.nil?)
91
90
  return
@@ -95,7 +94,7 @@ module LitleOnline
95
94
  raise "If " + class_name + " " + field_name + " is specified, it must be valid. You specified " + value
96
95
  end
97
96
  end
98
-
97
+
99
98
  def self.validate_regex(value, required, regex, class_name, field_name)
100
99
  validate_required(value, required, class_name, field_name)
101
100
  if(value.nil?)
@@ -105,7 +104,7 @@ module LitleOnline
105
104
  raise "If #{class_name} #{field_name} is specified, it must match the regular expression #{regex.inspect}"
106
105
  end
107
106
  end
108
-
107
+
109
108
  def self.validate_enum(value, required, list, class_name, field_name)
110
109
  validate_required(value, required, class_name, field_name)
111
110
  if(value.nil?)
@@ -116,25 +115,25 @@ module LitleOnline
116
115
  raise "If #{class_name} #{field_name} is specified, it must be in #{str}"
117
116
  end
118
117
  end
119
-
118
+
120
119
  def self.validate_long(value, required, class_name, field_name)
121
120
  validate_size(value, required, -9223372036854775808, 9223372036854775807, class_name, field_name)
122
121
  end
123
-
122
+
124
123
  def self.validate_currency(value, required, class_name, field_name)
125
124
  validate_enum(value, required, ['AUD','CAD','CHF','DKK','EUR','GBP','HKD','JPY','NOK','NZD','SEK','SGD','USD'], class_name, field_name)
126
125
  end
127
-
126
+
128
127
  def self.validate_boolean(value, required, class_name, field_name)
129
128
  validate_enum(value, required, ['true','false','1','0'], class_name, field_name)
130
129
  end
131
-
130
+
132
131
  def self.validate_date(value, required, class_name, field_name)
133
132
  validate_regex(value, required, /\A\d{4}-\d{2}-\d{2}\Z/, class_name, field_name)
134
133
  end
135
-
134
+
136
135
  end
137
-
136
+
138
137
  class Contact
139
138
  include XML::Mapping
140
139
  text_node :name, "name", :default_value=>nil
@@ -190,7 +189,7 @@ module LitleOnline
190
189
  end
191
190
  end
192
191
  end
193
-
192
+
194
193
  class CustomerInfo
195
194
  include XML::Mapping
196
195
  text_node :ssn, "ssn", :default_value=>nil
@@ -242,7 +241,7 @@ module LitleOnline
242
241
  end
243
242
  end
244
243
  end
245
-
244
+
246
245
  class BillMeLaterRequest
247
246
  include XML::Mapping
248
247
  text_node :bmlMerchantId, "bmlMerchantId", :default_value=>nil
@@ -299,7 +298,7 @@ module LitleOnline
299
298
  end
300
299
  end
301
300
  end
302
-
301
+
303
302
  class FraudCheck
304
303
  include XML::Mapping
305
304
  text_node :authenticationValue, "authenticationValue", :default_value=>nil
@@ -314,7 +313,7 @@ module LitleOnline
314
313
  this.authenticationTransactionId = base['authenticationTransactionId']
315
314
  this.customerIpAddress = base['customerIpAddress']
316
315
  this.authenticatedByMerchant = base['authenticatedByMerchant']
317
- SchemaValidation.validate_length(this.authenticationValue, false, 1, 32, name, "authenticationValue")
316
+ SchemaValidation.validate_length(this.authenticationValue, false, 1, 56, name, "authenticationValue")
318
317
  SchemaValidation.validate_length(this.authenticationTransactionId, false, 1, 28, name, "authenticationTransactionId")
319
318
  SchemaValidation.validate_regex(this.customerIpAddress, false, /\A(\d{1,3}.){3}\d{1,3}\Z/, name, 'customerIpAddress')
320
319
  SchemaValidation.validate_boolean(this.authenticatedByMerchant, false, name, 'authenticatedByMerchant')
@@ -324,7 +323,7 @@ module LitleOnline
324
323
  end
325
324
  end
326
325
  end
327
-
326
+
328
327
  class AdvancedFraudResults
329
328
  include XML::Mapping
330
329
  root_element_name "advanceFraudResults"
@@ -338,12 +337,12 @@ module LitleOnline
338
337
  this.deviceReviewStatus = base['deviceReviewStatus']
339
338
  this.deviceReputationScore = base['deviceReputationScore']
340
339
  if(base['triggeredRule'])
341
- base['triggeredRule'].each_index {|index| this.triggeredRule << base['triggeredRule'][index]}
340
+ base['triggeredRule'].each_index {|index| this.triggeredRule << base['triggeredRule'][index]}
342
341
  end
343
342
  this
344
343
  end
345
- end
346
344
  end
345
+ end
347
346
 
348
347
  class FraudResult
349
348
  include XML::Mapping
@@ -351,7 +350,7 @@ module LitleOnline
351
350
  text_node :cardValidationResult, "cardValidationResult", :default_value=>nil
352
351
  text_node :authenticationResult, "authenticationResult", :default_value=>nil
353
352
  text_node :advancedAVSResult, "advancedAVSResult", :default_value=>nil
354
- object_node :advancedFraudResults, "advancedFraudResults",:class => AdvancedFraudResults, :default_value=>nil
353
+ object_node :advancedFraudResults, "advancedFraudResults",:class => AdvancedFraudResults, :default_value=>nil
355
354
  def self.from_hash(hash, name='fraudResult')
356
355
  base = hash[name]
357
356
  if(base)
@@ -370,7 +369,7 @@ module LitleOnline
370
369
  end
371
370
  end
372
371
  end
373
-
372
+
374
373
  class AuthInformation
375
374
  include XML::Mapping
376
375
  text_node :authDate, "authDate", :default_value=>nil
@@ -394,7 +393,7 @@ module LitleOnline
394
393
  end
395
394
  end
396
395
  end
397
-
396
+
398
397
  class HealthcareAmounts
399
398
  include XML::Mapping
400
399
  text_node :totalHealthcareAmount, "totalHealthcareAmount", :default_value=>nil
@@ -422,7 +421,7 @@ module LitleOnline
422
421
  end
423
422
  end
424
423
  end
425
-
424
+
426
425
  class HealthcareIIAS
427
426
  include XML::Mapping
428
427
  object_node :healthcareAmounts, "healthcareAmounts", :class=>HealthcareAmounts, :default_value=>nil
@@ -440,7 +439,7 @@ module LitleOnline
440
439
  end
441
440
  end
442
441
  end
443
-
442
+
444
443
  class Pos
445
444
  include XML::Mapping
446
445
  text_node :capability, "capability", :default_value=>nil
@@ -456,7 +455,7 @@ module LitleOnline
456
455
  this.entryMode = base['entryMode']
457
456
  this.cardholderId = base['cardholderId']
458
457
  this.terminalId = base['terminalId']
459
- this.catLevel =base['catLevel']
458
+ this.catLevel =base['catLevel']
460
459
  SchemaValidation.validate_enum(this.capability, true, ['notused','magstripe','keyedonly'], name, 'capability')
461
460
  SchemaValidation.validate_enum(this.entryMode, true, ['notused','keyed','track1','track2','completeread'], name, 'entryMode')
462
461
  SchemaValidation.validate_enum(this.cardholderId, true, ['signature','pin','nopin','directmarket'], name, 'cardholderId')
@@ -467,7 +466,7 @@ module LitleOnline
467
466
  end
468
467
  end
469
468
  end
470
-
469
+
471
470
  class DetailTax
472
471
  include XML::Mapping
473
472
  text_node :taxIncludedInTotal, "taxIncludedInTotal", :default_value=>nil
@@ -495,7 +494,7 @@ module LitleOnline
495
494
  end
496
495
  end
497
496
  end
498
-
497
+
499
498
  class LineItemData
500
499
  include XML::Mapping
501
500
  text_node :itemSequenceNumber, "itemSequenceNumber", :default_value=>nil
@@ -545,7 +544,7 @@ module LitleOnline
545
544
  end
546
545
  end
547
546
  end
548
-
547
+
549
548
  class EnhancedData
550
549
  include XML::Mapping
551
550
  text_node :customerReference, "customerReference", :default_value=>nil
@@ -602,7 +601,7 @@ module LitleOnline
602
601
  end
603
602
  end
604
603
  end
605
-
604
+
606
605
  class AmexAggregatorData
607
606
  include XML::Mapping
608
607
  text_node :sellerId, "sellerId", :default_value=>nil
@@ -621,7 +620,7 @@ module LitleOnline
621
620
  end
622
621
  end
623
622
  end
624
-
623
+
625
624
  class Card
626
625
  include XML::Mapping
627
626
  text_node :mop, "type", :default_value=>nil
@@ -629,7 +628,6 @@ module LitleOnline
629
628
  text_node :number, "number", :default_value=>nil
630
629
  text_node :expDate, "expDate", :default_value=>nil
631
630
  text_node :cardValidationNum, "cardValidationNum", :default_value=>nil
632
-
633
631
  def self.from_hash(hash, name='card')
634
632
  base = hash[name]
635
633
  if(base)
@@ -651,6 +649,56 @@ module LitleOnline
651
649
  end
652
650
  end
653
651
 
652
+ class ApplepayHeader
653
+ include XML::Mapping
654
+ text_node :applicationData, "applicationData", :default_value=>nil
655
+ text_node :ephemeralPublicKey, "ephemeralPublicKey", :default_value=>nil
656
+ text_node :publicKeyHash, "publicKeyHash", :default_value=>nil
657
+ text_node :transactionId, "transactionId", :default_value=>nil
658
+ def self.from_hash(hash, name='header')
659
+ base = hash[name]
660
+ if(base)
661
+ this = ApplepayHeader.new
662
+ this.applicationData = base['applicationData']
663
+ this.ephemeralPublicKey = base['ephemeralPublicKey']
664
+ this.publicKeyHash = base['publicKeyHash']
665
+ this.transactionId = base['transactionId']
666
+ SchemaValidation.validate_required(this.applicationData,true,name,'applicationData')
667
+ SchemaValidation.validate_required(this.ephemeralPublicKey,true,name,'ephemeralPublicKey')
668
+ SchemaValidation.validate_required(this.publicKeyHash,true,name,'publicKeyHash')
669
+ SchemaValidation.validate_required(this.transactionId,true,name,'transactionId')
670
+ this
671
+ else
672
+ nil
673
+ end
674
+ end
675
+ end
676
+
677
+ class Applepay
678
+ include XML::Mapping
679
+ text_node :data, "data", :default_value=>nil
680
+ object_node :header, "header", :class=>ApplepayHeader, :default_value=>nil
681
+ text_node :signature, "signature", :default_value=>nil
682
+ text_node :version, "version", :default_value=>nil
683
+ def self.from_hash(hash, name='applepay')
684
+ base = hash[name]
685
+ if(base)
686
+ this = Applepay.new
687
+ this.data = base['data']
688
+ this.header = ApplepayHeader.from_hash(base)
689
+ this.signature = base['signature']
690
+ this.version = base['version']
691
+ SchemaValidation.validate_required(this.data,true,name,'data')
692
+ SchemaValidation.validate_required(this.header,true,name,'header')
693
+ SchemaValidation.validate_required(this.signature,true,name,'signature')
694
+ SchemaValidation.validate_required(this.version,true,name,'version')
695
+ this
696
+ else
697
+ nil
698
+ end
699
+ end
700
+ end
701
+
654
702
  class Mpos
655
703
  include XML::Mapping
656
704
  text_node :ksn, "ksn", :default_value=>nil
@@ -661,23 +709,23 @@ module LitleOnline
661
709
  def self.from_hash(hash, name='mpos')
662
710
  base = hash[name]
663
711
  if(base)
664
- this = Mpos.new
665
- this.ksn = base['ksn']
666
- this.formatId = base['formatId']
667
- this.encryptedTrack = base['encryptedTrack']
668
- this.track1Status = base['track1Status']
669
- this.track2Status = base['track2Status']
670
- SchemaValidation.validate_length(this.ksn, true, 1, 1028 , name, 'ksn')
671
- SchemaValidation.validate_length(this.formatId, true, 1, 1028, name, 'formatId')
672
- SchemaValidation.validate_length(this.encryptedTrack, true, 1, 1028, name, 'encryptedTrack')
673
- SchemaValidation.validate_size(this.track1Status, true, 0, 1028, name, 'track1Status')
674
- SchemaValidation.validate_size(this.track2Status, true, 0, 1028, name, 'track2Status')
675
- this
712
+ this = Mpos.new
713
+ this.ksn = base['ksn']
714
+ this.formatId = base['formatId']
715
+ this.encryptedTrack = base['encryptedTrack']
716
+ this.track1Status = base['track1Status']
717
+ this.track2Status = base['track2Status']
718
+ SchemaValidation.validate_length(this.ksn, true, 1, 1028 , name, 'ksn')
719
+ SchemaValidation.validate_length(this.formatId, true, 1, 1028, name, 'formatId')
720
+ SchemaValidation.validate_length(this.encryptedTrack, true, 1, 1028, name, 'encryptedTrack')
721
+ SchemaValidation.validate_size(this.track1Status, true, 0, 1028, name, 'track1Status')
722
+ SchemaValidation.validate_size(this.track2Status, true, 0, 1028, name, 'track2Status')
723
+ this
676
724
  end
677
725
  end
678
726
 
679
727
  end
680
-
728
+
681
729
  class CardToken
682
730
  include XML::Mapping
683
731
  text_node :litleToken, "litleToken", :default_value=>nil
@@ -702,7 +750,7 @@ module LitleOnline
702
750
  end
703
751
  end
704
752
  end
705
-
753
+
706
754
  class CardPaypage
707
755
  include XML::Mapping
708
756
  text_node :paypageRegistrationId, "paypageRegistrationId", :default_value=>nil
@@ -727,7 +775,7 @@ module LitleOnline
727
775
  end
728
776
  end
729
777
  end
730
-
778
+
731
779
  class PayPal
732
780
  include XML::Mapping
733
781
  text_node :payerId, "payerId", :default_value=>nil
@@ -748,7 +796,7 @@ module LitleOnline
748
796
  end
749
797
  end
750
798
  end
751
-
799
+
752
800
  class CreditPayPal
753
801
  include XML::Mapping
754
802
  text_node :payerId, "payerId", :default_value=>nil
@@ -767,7 +815,7 @@ module LitleOnline
767
815
  end
768
816
  end
769
817
  end
770
-
818
+
771
819
  class CustomBilling
772
820
  include XML::Mapping
773
821
  optional_choice_node :if, 'phone', :then, (text_node :phone, "phone", :default_value=>nil),
@@ -792,7 +840,7 @@ module LitleOnline
792
840
  end
793
841
  end
794
842
  end
795
-
843
+
796
844
  class ProcessingInstructions
797
845
  include XML::Mapping
798
846
  text_node :bypassVelocityCheck, "bypassVelocityCheck", :default_value=>nil
@@ -808,7 +856,7 @@ module LitleOnline
808
856
  end
809
857
  end
810
858
  end
811
-
859
+
812
860
  class EcheckForToken
813
861
  include XML::Mapping
814
862
  text_node :accNum, "accNum", :default_value=>nil
@@ -827,7 +875,7 @@ module LitleOnline
827
875
  end
828
876
  end
829
877
  end
830
-
878
+
831
879
  class Filtering
832
880
  include XML::Mapping
833
881
  text_node :prepaid, "prepaid", :default_value=>nil
@@ -849,7 +897,7 @@ module LitleOnline
849
897
  end
850
898
  end
851
899
  end
852
-
900
+
853
901
  class MerchantData
854
902
  include XML::Mapping
855
903
  text_node :campaign, "campaign", :default_value=>nil
@@ -871,7 +919,7 @@ module LitleOnline
871
919
  end
872
920
  end
873
921
  end
874
-
922
+
875
923
  class Echeck
876
924
  include XML::Mapping
877
925
  text_node :accType, "accType", :default_value=>nil
@@ -896,7 +944,7 @@ module LitleOnline
896
944
  end
897
945
  end
898
946
  end
899
-
947
+
900
948
  class EcheckToken
901
949
  include XML::Mapping
902
950
  text_node :litleToken, "litleToken", :default_value=>nil
@@ -921,7 +969,7 @@ module LitleOnline
921
969
  end
922
970
  end
923
971
  end
924
-
972
+
925
973
  class RecyclingRequest
926
974
  include XML::Mapping
927
975
  text_node :recycleBy, "recycleBy", :default_value=>nil
@@ -959,7 +1007,7 @@ module LitleOnline
959
1007
  this.endDate = base['endDate']
960
1008
  SchemaValidation.validate_length(this.discountCode, true, 1, 25, name, 'discountCode')
961
1009
  SchemaValidation.validate_length(this.name, true, 1, 100, name, "name")
962
- SchemaValidation.validate_size(this.amount,true,0,999999999999,name,'amount')
1010
+ SchemaValidation.validate_size(this.amount,true,0,999999999999,name,'amount')
963
1011
  SchemaValidation.validate_date(this.startDate, true, name, 'startDate')
964
1012
  SchemaValidation.validate_date(this.endDate, true, name, 'endDate')
965
1013
  this
@@ -985,14 +1033,14 @@ module LitleOnline
985
1033
  this.endDate = base['endDate']
986
1034
  SchemaValidation.validate_length(this.addOnCode, true, 1, 25, name, 'addOnCode')
987
1035
  SchemaValidation.validate_length(this.name, true, 1, 100, name, "name")
988
- SchemaValidation.validate_size(this.amount,true,0,999999999999,name,'amount')
1036
+ SchemaValidation.validate_size(this.amount,true,0,999999999999,name,'amount')
989
1037
  SchemaValidation.validate_date(this.startDate, true, name, 'startDate')
990
1038
  SchemaValidation.validate_date(this.endDate, true, name, 'endDate')
991
1039
  this
992
1040
  end
993
1041
  end
994
1042
  end
995
-
1043
+
996
1044
  class Subscription
997
1045
  include XML::Mapping
998
1046
  text_node :planCode, "planCode", :default_value=>nil
@@ -1001,26 +1049,25 @@ module LitleOnline
1001
1049
  text_node :amount,"amount",:default_value=>nil
1002
1050
  array_node :createDiscount, "", "createDiscount", :class=>CreateDiscount, :default_value=>[]
1003
1051
  array_node :createAddOn, "", "createAddOn", :class=>CreateAddOn, :default_value=>[]
1004
-
1005
1052
  def self.from_hash(hash, name="subscription")
1006
1053
  base = hash[name]
1007
1054
  if(base)
1008
1055
  this = Subscription.new
1009
1056
  this.planCode = base['planCode']
1010
1057
  this.numberOfPayments = base['numberOfPayments']
1011
- this.startDate = base['startDate']
1012
- this.amount = base['amount']
1013
- if(base['createDiscount'])
1058
+ this.startDate = base['startDate']
1059
+ this.amount = base['amount']
1060
+ if(base['createDiscount'])
1014
1061
  base['createDiscount'].each_index {|index| this.createDiscount << CreateDiscount.from_hash(base,index)}
1015
1062
  end
1016
1063
 
1017
- if(base['createAddOn'])
1064
+ if(base['createAddOn'])
1018
1065
  base['createAddOn'].each_index {|index| this.createAddOn << CreateAddOn.from_hash(base,index)}
1019
1066
  end
1020
1067
  SchemaValidation.validate_length(this.planCode, true, 1, 25, name, 'planCode')
1021
1068
  SchemaValidation.validate_size(this.numberOfPayments, false, 1, 99, name, 'numberOfPayments')
1022
- SchemaValidation.validate_date(this.startDate,false,name,'startDate')
1023
- SchemaValidation.validate_size(this.amount,false,0,999999999999,name,'amount')
1069
+ SchemaValidation.validate_date(this.startDate,false,name,'startDate')
1070
+ SchemaValidation.validate_size(this.amount,false,0,999999999999,name,'amount')
1024
1071
  this
1025
1072
  end
1026
1073
  end
@@ -1038,7 +1085,7 @@ module LitleOnline
1038
1085
  end
1039
1086
  end
1040
1087
  end
1041
-
1088
+
1042
1089
  class LitleInternalRecurringRequest
1043
1090
  include XML::Mapping
1044
1091
  text_node :subscriptionId, "subscriptionId", :default_value=>nil
@@ -1050,10 +1097,10 @@ module LitleOnline
1050
1097
  this = LitleInternalRecurringRequest.new
1051
1098
  this.subscriptionId = base['subscriptionId']
1052
1099
  this.recurringTxnId = base['recurringTxnId']
1053
- this.finalPayment = base['finalPayment']
1100
+ this.finalPayment = base['finalPayment']
1054
1101
  SchemaValidation.validate_length(this.subscriptionId, true, 19, 19, name, "subscriptionId")
1055
1102
  SchemaValidation.validate_length(this.recurringTxnId, true, 19, 19, name, "recurringTxnId")
1056
- SchemaValidation.validate_boolean(this.finalPayment, true, name, "finalPayment")
1103
+ SchemaValidation.validate_boolean(this.finalPayment, true, name, "finalPayment")
1057
1104
  this
1058
1105
  end
1059
1106
  end
@@ -1077,7 +1124,7 @@ module LitleOnline
1077
1124
  this.endDate = base['endDate']
1078
1125
  SchemaValidation.validate_length(this.discountCode, true, 1, 25, name, 'discountCode')
1079
1126
  SchemaValidation.validate_length(this.name, false, 1, 100, name, "name")
1080
- SchemaValidation.validate_size(this.amount,false,0,999999999999,name,'amount')
1127
+ SchemaValidation.validate_size(this.amount,false,0,999999999999,name,'amount')
1081
1128
  SchemaValidation.validate_date(this.startDate, false, name, 'startDate')
1082
1129
  SchemaValidation.validate_date(this.endDate, false, name, 'endDate')
1083
1130
  this
@@ -1113,7 +1160,6 @@ module LitleOnline
1113
1160
  end
1114
1161
  end
1115
1162
 
1116
-
1117
1163
  class UpdateAddOn
1118
1164
  include XML::Mapping
1119
1165
  text_node :addOnCode, "addOnCode", :default_value=>nil
@@ -1132,7 +1178,7 @@ module LitleOnline
1132
1178
  this.endDate = base['endDate']
1133
1179
  SchemaValidation.validate_length(this.addOnCode, true, 1, 25, name, 'addOnCode')
1134
1180
  SchemaValidation.validate_length(this.name, false, 1, 100, name, "name")
1135
- SchemaValidation.validate_size(this.amount,false,0,999999999999,name,'amount')
1181
+ SchemaValidation.validate_size(this.amount,false,0,999999999999,name,'amount')
1136
1182
  SchemaValidation.validate_date(this.startDate, false, name, 'startDate')
1137
1183
  SchemaValidation.validate_date(this.endDate, false, name, 'endDate')
1138
1184
  this
@@ -1140,8 +1186,6 @@ module LitleOnline
1140
1186
  end
1141
1187
  end
1142
1188
 
1143
-
1144
-
1145
1189
  class CancelSubscription
1146
1190
  include XML::Mapping
1147
1191
  root_element_name "cancelSubscription"
@@ -1165,7 +1209,7 @@ module LitleOnline
1165
1209
  array_node :createAddOn, "", "createAddOn", :class=>CreateAddOn, :default_value=>[]
1166
1210
  array_node :updateAddOn, "", "updateAddOn", :class=>UpdateAddOn, :default_value=>[]
1167
1211
  array_node :deleteAddOn, "", "deleteAddOn", :class=>DeleteAddOn, :default_value=>[]
1168
- end
1212
+ end
1169
1213
 
1170
1214
  class CreatePlan
1171
1215
  include XML::Mapping
@@ -1179,21 +1223,20 @@ module LitleOnline
1179
1223
  text_node :trialNumberOfIntervals,"trialNumberOfIntervals", :default_value=>nil
1180
1224
  text_node :trialIntervalType,"trialIntervalType", :default_value=>nil
1181
1225
  text_node :active,"active", :default_value=>nil
1182
- end
1226
+ end
1183
1227
 
1184
1228
  class UpdatePlan
1185
1229
  include XML::Mapping
1186
1230
  root_element_name "updatePlan"
1187
1231
  text_node :planCode,"planCode",:default_value=>nil
1188
1232
  text_node :active,"active", :default_value=>nil
1189
- end
1233
+ end
1190
1234
 
1191
1235
  class VirtualGiftCard
1192
1236
  include XML::Mapping
1193
- root_element_name "virtualGiftCard"
1237
+ root_element_name "virtualGiftCard"
1194
1238
  text_node "accountNumberLength","accountNumberLength", :default_value=>nil
1195
1239
  text_node "giftCardBin","giftCardBin", :default_value=>nil
1196
-
1197
1240
  def self.from_hash(hash, name="virtualGiftCard")
1198
1241
  base = hash[name]
1199
1242
  if(base)
@@ -1259,29 +1302,28 @@ module LitleOnline
1259
1302
  include XML::Mapping
1260
1303
  root_element_name "advancedFraudChecks"
1261
1304
  text_node :threatMetrixSessionId, 'threatMetrixSessionId', :default_value=>nil
1262
-
1263
1305
  def self.from_hash(hash, name="advancedFraudChecks")
1264
1306
  base = hash[name]
1265
1307
  if(base)
1266
1308
  this = AdvancedFraudChecks.new
1267
1309
  this.threatMetrixSessionId = base['threatMetrixSessionId'] # /\A([A-Z,a-z,0-9, ,\*,,,\-,',#,&,.]){4,25}\Z/
1268
- #SchemaValidation.validate_regex(this.threatMetrixSessionId, true, '[-a-zA-Z0-9_]{1,128}', name, 'threatMetrixSessionId')
1310
+ #SchemaValidation.validate_regex(this.threatMetrixSessionId, true, '[-a-zA-Z0-9_]{1,128}', name, 'threatMetrixSessionId')
1269
1311
  this
1270
1312
  end
1271
1313
  end
1272
- end
1314
+ end
1273
1315
 
1274
-
1275
1316
  class Authorization
1276
1317
  include XML::Mapping
1277
1318
  root_element_name "authorization"
1278
1319
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1279
1320
  text_node :transactionId, "@id", :default_value=>nil
1280
1321
  text_node :customerId, "@customerId", :default_value=>nil
1281
-
1322
+
1282
1323
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1283
1324
  text_node :orderId, "orderId", :default_value=>nil
1284
1325
  text_node :amount, "amount", :default_value=>nil
1326
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1285
1327
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
1286
1328
  text_node :orderSource, "orderSource", :default_value=>nil
1287
1329
  object_node :customerInfo, "customerInfo", :class=>CustomerInfo, :default_value=>nil
@@ -1291,7 +1333,8 @@ module LitleOnline
1291
1333
  :elsif, 'paypal', :then, (object_node :paypal, "paypal", :class=>PayPal),
1292
1334
  :elsif, 'token', :then, (object_node :token, "token", :class=>CardToken),
1293
1335
  :elsif, 'paypage', :then, (object_node :paypage, "paypage", :class=>CardPaypage),
1294
- :elsif, 'mpos', :then, (object_node :mpos, "mpos", :class=>Mpos)
1336
+ :elsif, 'mpos', :then, (object_node :mpos, "mpos", :class=>Mpos),
1337
+ :elsif, 'applepay', :then, (object_node :applepay, "applepay", :class=>Applepay)
1295
1338
  object_node :billMeLaterRequest, "billMeLaterRequest", :class=>BillMeLaterRequest, :default_value=>nil
1296
1339
  object_node :cardholderAuthentication, "cardholderAuthentication", :class=>FraudCheck, :default_value=>nil
1297
1340
  object_node :processingInstructions, "processingInstructions", :class=>ProcessingInstructions, :default_value=>nil
@@ -1310,17 +1353,18 @@ module LitleOnline
1310
1353
  text_node :debtRepayment,"debtRepayment", :default_value=>nil
1311
1354
  object_node :advancedFraudChecks, "advancedFraudChecks",:class=>AdvancedFraudChecks, :default_value=>nil
1312
1355
  end
1313
-
1356
+
1314
1357
  class Sale
1315
1358
  include XML::Mapping
1316
1359
  root_element_name "sale"
1317
1360
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1318
1361
  text_node :transactionId, "@id", :default_value=>nil
1319
1362
  text_node :customerId, "@customerId", :default_value=>nil
1320
-
1363
+
1321
1364
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1322
1365
  text_node :orderId, "orderId", :default_value=>nil
1323
1366
  text_node :amount, "amount", :default_value=>nil
1367
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1324
1368
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
1325
1369
  text_node :orderSource, "orderSource", :default_value=>nil
1326
1370
  object_node :customerInfo, "customerInfo", :class=>CustomerInfo, :default_value=>nil
@@ -1330,10 +1374,11 @@ module LitleOnline
1330
1374
  :elsif, 'paypal', :then, (object_node :paypal, "paypal", :class=>PayPal),
1331
1375
  :elsif, 'token', :then, (object_node :token, "token", :class=>CardToken),
1332
1376
  :elsif, 'paypage', :then, (object_node :paypage, "paypage", :class=>CardPaypage),
1333
- :elsif, 'mpos', :then, (object_node :mpos, "mpos", :class=>Mpos)
1377
+ :elsif, 'mpos', :then, (object_node :mpos, "mpos", :class=>Mpos),
1378
+ :elsif, 'applepay', :then, (object_node :applepay, "applepay", :class=>Applepay)
1334
1379
  object_node :billMeLaterRequest, "billMeLaterRequest", :class=>BillMeLaterRequest, :default_value=>nil
1335
- optional_choice_node :if, 'fraudCheck', :then, (object_node :fraudCheck, "fraudCheck", :class=>FraudCheck, :default_value=>nil),
1336
- :elsif, 'cardholderAuthentication', :then, (object_node :cardholderAuthentication, "cardholderAuthentication", :class=>FraudCheck, :default_value=>nil)
1380
+ optional_choice_node :if, 'fraudCheck', :then, (object_node :fraudCheck, "fraudCheck", :class=>FraudCheck, :default_value=>nil),
1381
+ :elsif, 'cardholderAuthentication', :then, (object_node :cardholderAuthentication, "cardholderAuthentication", :class=>FraudCheck, :default_value=>nil)
1337
1382
  object_node :customBilling, "customBilling", :class=>CustomBilling, :default_value=>nil
1338
1383
  text_node :taxType, "taxType", :default_value=>nil
1339
1384
  object_node :enhancedData, "enhancedData", :class=>EnhancedData, :default_value=>nil
@@ -1353,17 +1398,18 @@ module LitleOnline
1353
1398
  text_node :debtRepayment,"debtRepayment", :default_value=>nil
1354
1399
  object_node :advancedFraudChecks, "advancedFraudChecks",:class=>AdvancedFraudChecks, :default_value=>nil
1355
1400
  end
1356
-
1401
+
1357
1402
  class Credit
1358
1403
  include XML::Mapping
1359
1404
  root_element_name "credit"
1360
1405
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1361
1406
  text_node :transactionId, "@id", :default_value=>nil
1362
1407
  text_node :customerId, "@customerId", :default_value=>nil
1363
-
1408
+
1364
1409
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1365
1410
  text_node :orderId, "orderId", :default_value=>nil
1366
1411
  text_node :amount, "amount", :default_value=>nil
1412
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1367
1413
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
1368
1414
  text_node :orderSource, "orderSource", :default_value=>nil
1369
1415
  object_node :billToAddress, "billToAddress", :class=>Contact, :default_value=>nil
@@ -1383,30 +1429,32 @@ module LitleOnline
1383
1429
  text_node :payPalNotes, "payPalNotes", :default_value=>nil
1384
1430
  text_node :actionReason, "actionReason", :default_value=>nil
1385
1431
  end
1386
-
1432
+
1387
1433
  class RegisterTokenRequest
1388
1434
  include XML::Mapping
1389
1435
  root_element_name "registerTokenRequest"
1390
1436
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1391
1437
  text_node :transactionId, "@id", :default_value=>nil
1392
1438
  text_node :customerId, "@customerId", :default_value=>nil
1393
-
1439
+
1394
1440
  text_node :orderId, "orderId", :default_value=>nil
1395
1441
  optional_choice_node :if, 'accountNumber', :then, (text_node :accountNumber, "accountNumber", :default_value=>nil),
1396
1442
  :elsif, 'echeckForToken', :then, (object_node :echeckForToken, "echeckForToken", :class=>EcheckForToken),
1397
- :elsif, 'paypageRegistrationId', :then, (text_node :paypageRegistrationId, "paypageRegistrationId", :default_value=>nil)
1443
+ :elsif, 'paypageRegistrationId', :then, (text_node :paypageRegistrationId, "paypageRegistrationId", :default_value=>nil),
1444
+ :elsif, 'applepay', :then, (object_node :applepay, "applepay", :class=>Applepay)
1398
1445
  end
1399
-
1446
+
1400
1447
  class CaptureGivenAuth
1401
1448
  include XML::Mapping
1402
1449
  root_element_name "captureGivenAuth"
1403
1450
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1404
1451
  text_node :transactionId, "@id", :default_value=>nil
1405
1452
  text_node :customerId, "@customerId", :default_value=>nil
1406
-
1453
+
1407
1454
  text_node :orderId, "orderId", :default_value=>nil
1408
1455
  object_node :authInformation, "authInformation", :class=>AuthInformation, :default_value=>nil
1409
1456
  text_node :amount, "amount", :default_value=>nil
1457
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1410
1458
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
1411
1459
  text_node :orderSource, "orderSource", :default_value=>nil
1412
1460
  object_node :billToAddress, "billToAddress", :class=>Contact, :default_value=>nil
@@ -1425,16 +1473,17 @@ module LitleOnline
1425
1473
  object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1426
1474
  text_node :debtRepayment,"debtRepayment", :default_value=>nil
1427
1475
  end
1428
-
1476
+
1429
1477
  class ForceCapture
1430
1478
  include XML::Mapping
1431
1479
  root_element_name "forceCapture"
1432
1480
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1433
1481
  text_node :transactionId, "@id", :default_value=>nil
1434
1482
  text_node :customerId, "@customerId", :default_value=>nil
1435
-
1483
+
1436
1484
  text_node :orderId, "orderId", :default_value=>nil
1437
1485
  text_node :amount, "amount", :default_value=>nil
1486
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1438
1487
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
1439
1488
  text_node :orderSource, "orderSource", :default_value=>nil
1440
1489
  object_node :billToAddress, "billToAddress", :class=>Contact, :default_value=>nil
@@ -1451,7 +1500,7 @@ module LitleOnline
1451
1500
  object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1452
1501
  text_node :debtRepayment,"debtRepayment", :default_value=>nil
1453
1502
  end
1454
-
1503
+
1455
1504
  class AuthReversal
1456
1505
  include XML::Mapping
1457
1506
  root_element_name "authReversal"
@@ -1459,14 +1508,14 @@ module LitleOnline
1459
1508
  text_node :transactionId, "@id", :default_value=>nil
1460
1509
  text_node :customerId, "@customerId", :default_value=>nil
1461
1510
  text_node :partial, "@partial", :default_value=>nil
1462
-
1511
+
1463
1512
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1464
1513
  text_node :amount, "amount", :default_value=>nil
1465
1514
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
1466
1515
  text_node :payPalNotes, "payPalNotes", :default_value=>nil
1467
1516
  text_node :actionReason, "actionReason", :default_value=>nil
1468
1517
  end
1469
-
1518
+
1470
1519
  class Capture
1471
1520
  include XML::Mapping
1472
1521
  root_element_name "capture"
@@ -1474,7 +1523,7 @@ module LitleOnline
1474
1523
  text_node :transactionId, "@id", :default_value=>nil
1475
1524
  text_node :customerId, "@customerId", :default_value=>nil
1476
1525
  text_node :partial, "@partial", :default_value=>nil
1477
-
1526
+
1478
1527
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1479
1528
  text_node :amount, "amount", :default_value=>nil
1480
1529
  text_node :surchargeAmount, "surchargeAmount", :default_value=>nil
@@ -1483,25 +1532,25 @@ module LitleOnline
1483
1532
  text_node :payPalOrderComplete, "payPalOrderComplete", :default_value=>nil
1484
1533
  text_node :payPalNotes, "payPalNotes", :default_value=>nil
1485
1534
  end
1486
-
1535
+
1487
1536
  class Void
1488
1537
  include XML::Mapping
1489
1538
  root_element_name "void"
1490
1539
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1491
1540
  text_node :transactionId, "@id", :default_value=>nil
1492
1541
  text_node :customerId, "@customerId", :default_value=>nil
1493
-
1542
+
1494
1543
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1495
1544
  object_node :processingInstructions, "processingInstructions", :class=>ProcessingInstructions, :default_value=>nil
1496
1545
  end
1497
-
1546
+
1498
1547
  class EcheckVoid
1499
1548
  include XML::Mapping
1500
1549
  root_element_name "echeckVoid"
1501
1550
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1502
1551
  text_node :transactionId, "@id", :default_value=>nil
1503
1552
  text_node :customerId, "@customerId", :default_value=>nil
1504
-
1553
+
1505
1554
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1506
1555
  end
1507
1556
 
@@ -1511,7 +1560,7 @@ module LitleOnline
1511
1560
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1512
1561
  text_node :transactionId, "@id", :default_value=>nil
1513
1562
  text_node :customerId, "@customerId", :default_value=>nil
1514
-
1563
+
1515
1564
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1516
1565
  end
1517
1566
 
@@ -1521,7 +1570,7 @@ module LitleOnline
1521
1570
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1522
1571
  text_node :transactionId, "@id", :default_value=>nil
1523
1572
  text_node :customerId, "@customerId", :default_value=>nil
1524
-
1573
+
1525
1574
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1526
1575
  end
1527
1576
 
@@ -1531,7 +1580,7 @@ module LitleOnline
1531
1580
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1532
1581
  text_node :transactionId, "@id", :default_value=>nil
1533
1582
  text_node :customerId, "@customerId", :default_value=>nil
1534
-
1583
+
1535
1584
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1536
1585
  end
1537
1586
 
@@ -1541,17 +1590,17 @@ module LitleOnline
1541
1590
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1542
1591
  text_node :transactionId, "@id", :default_value=>nil
1543
1592
  text_node :customerId, "@customerId", :default_value=>nil
1544
-
1593
+
1545
1594
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1546
1595
  end
1547
-
1596
+
1548
1597
  class LoadReversal
1549
1598
  include XML::Mapping
1550
1599
  root_element_name "loadReversal"
1551
1600
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1552
1601
  text_node :transactionId, "@id", :default_value=>nil
1553
1602
  text_node :customerId, "@customerId", :default_value=>nil
1554
-
1603
+
1555
1604
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1556
1605
  end
1557
1606
 
@@ -1561,11 +1610,9 @@ module LitleOnline
1561
1610
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1562
1611
  text_node :transactionId, "@id", :default_value=>nil
1563
1612
  text_node :customerId, "@customerId", :default_value=>nil
1564
-
1565
- text_node :litleTxnId, "litleTxnId", :default_value=>nil
1566
- end
1567
-
1568
1613
 
1614
+ text_node :litleTxnId, "litleTxnId", :default_value=>nil
1615
+ end
1569
1616
 
1570
1617
  class EcheckVerification
1571
1618
  include XML::Mapping
@@ -1573,7 +1620,7 @@ module LitleOnline
1573
1620
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1574
1621
  text_node :transactionId, "@id", :default_value=>nil
1575
1622
  text_node :customerId, "@customerId", :default_value=>nil
1576
-
1623
+
1577
1624
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1578
1625
  text_node :orderId, "orderId", :default_value=>nil
1579
1626
  text_node :amount, "amount", :default_value=>nil
@@ -1582,19 +1629,20 @@ module LitleOnline
1582
1629
  object_node :shipToAddress, "shipToAddress", :class=>Contact, :default_value=>nil
1583
1630
  optional_choice_node :if, 'echeck', :then, (object_node :echeck, "echeck", :class=>Echeck),
1584
1631
  :elsif, 'echeckToken', :then, (object_node :echeckToken, "echeckToken", :class=>EcheckToken)
1585
- object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1632
+ object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1586
1633
  end
1587
-
1634
+
1588
1635
  class EcheckCredit
1589
1636
  include XML::Mapping
1590
1637
  root_element_name "echeckCredit"
1591
1638
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1592
1639
  text_node :transactionId, "@id", :default_value=>nil
1593
1640
  text_node :customerId, "@customerId", :default_value=>nil
1594
-
1641
+
1595
1642
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1596
1643
  text_node :orderId, "orderId", :default_value=>nil
1597
1644
  text_node :amount, "amount", :default_value=>nil
1645
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1598
1646
  text_node :orderSource, "orderSource", :default_value=>nil
1599
1647
  object_node :billToAddress, "billToAddress", :class=>Contact, :default_value=>nil
1600
1648
  optional_choice_node :if, 'echeck', :then, (object_node :echeck, "echeck", :class=>Echeck, :default_value=>nil),
@@ -1602,31 +1650,32 @@ module LitleOnline
1602
1650
  object_node :customBilling, "customBilling", :class=>CustomBilling, :default_value=>nil
1603
1651
  object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1604
1652
  end
1605
-
1653
+
1606
1654
  class EcheckRedeposit
1607
1655
  include XML::Mapping
1608
1656
  root_element_name "echeckRedeposit"
1609
1657
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1610
1658
  text_node :transactionId, "@id", :default_value=>nil
1611
1659
  text_node :customerId, "@customerId", :default_value=>nil
1612
-
1660
+
1613
1661
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1614
1662
  optional_choice_node :if, 'echeck', :then, (object_node :echeck, "echeck", :class=>Echeck, :default_value=>nil),
1615
1663
  :elsif, 'echeckToken', :then, (object_node :echeckToken, "echeckToken", :class=>EcheckToken, :default_value=>nil)
1616
- object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1664
+ object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1617
1665
  end
1618
-
1666
+
1619
1667
  class EcheckSale
1620
1668
  include XML::Mapping
1621
1669
  root_element_name "echeckSale"
1622
1670
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1623
1671
  text_node :transactionId, "@id", :default_value=>nil
1624
1672
  text_node :customerId, "@customerId", :default_value=>nil
1625
-
1673
+
1626
1674
  text_node :litleTxnId, "litleTxnId", :default_value=>nil
1627
1675
  text_node :orderId, "orderId", :default_value=>nil
1628
1676
  text_node :verify, "verify", :default_value=>nil
1629
1677
  text_node :amount, "amount", :default_value=>nil
1678
+ text_node :secondaryAmount, "secondaryAmount", :default_value=>nil
1630
1679
  text_node :orderSource, "orderSource", :default_value=>nil
1631
1680
  object_node :billToAddress, "billToAddress", :class=>Contact, :default_value=>nil
1632
1681
  object_node :shipToAddress, "shipToAddress", :class=>Contact, :default_value=>nil
@@ -1635,31 +1684,31 @@ module LitleOnline
1635
1684
  object_node :customBilling, "customBilling", :class=>CustomBilling, :default_value=>nil
1636
1685
  object_node :merchantData, "merchantData", :class=>MerchantData, :default_value=>nil
1637
1686
  end
1638
-
1687
+
1639
1688
  class UpdateCardValidationNumOnToken
1640
1689
  include XML::Mapping
1641
1690
  root_element_name "updateCardValidationNumOnToken"
1642
1691
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1643
1692
  text_node :transactionId, "@id", :default_value=>nil
1644
1693
  text_node :customerId, "@customerId", :default_value=>nil
1645
-
1694
+
1646
1695
  text_node :orderId, "orderId", :default_value=>nil
1647
1696
  text_node :litleToken, "litleToken", :default_value=>nil
1648
1697
  text_node :cardValidationNum, "cardValidationNum", :default_value=>nil
1649
1698
  end
1650
-
1699
+
1651
1700
  class AccountUpdate
1652
1701
  include XML::Mapping
1653
1702
  root_element_name "accountUpdate"
1654
1703
  text_node :reportGroup, "@reportGroup", :default_value=>nil
1655
1704
  text_node :transactionId, "@id", :default_value=>nil
1656
1705
  text_node :customerId, "@customerId", :default_value=>nil
1657
-
1706
+
1658
1707
  text_node :orderId, "orderId", :default_value=>nil
1659
1708
  optional_choice_node :if, 'card', :then, (object_node :card, "card", :class=>Card),
1660
1709
  :else, (object_node :token, "token", :class=>CardToken)
1661
1710
  end
1662
-
1711
+
1663
1712
  class OnlineRequest
1664
1713
  include XML::Mapping
1665
1714
  root_element_name "litleOnlineRequest"
@@ -1701,20 +1750,19 @@ module LitleOnline
1701
1750
  :elsif, 'loadReversal', :then, (object_node :loadReversal,"loadReversal", :class=>LoadReversal),
1702
1751
  :elsif, 'unloadReversal', :then, (object_node :unloadReversal,"unloadReversal", :class=>UnloadReversal),
1703
1752
  :elsif, 'advancedFraudResults', :then, (object_node :advancedFraudResults,"advancedFraudResults", :class=>AdvancedFraudResults)
1704
-
1705
1753
  def post_save(xml, options={:Mapping=>:_default})
1706
- xml.each_element() {|el|
1754
+ xml.each_element() {|el|
1707
1755
  if(el.name == 'captureTxn')
1708
1756
  el.name = 'capture'
1709
- end
1757
+ end
1710
1758
  }
1711
1759
  end
1712
-
1760
+
1713
1761
  end
1714
-
1762
+
1715
1763
  class BatchRequest
1716
1764
  include XML::Mapping
1717
- root_element_name "batchRequest"
1765
+ root_element_name "batchRequest"
1718
1766
 
1719
1767
  text_node :numAuths, "@numAuths", :default_value=>"0"
1720
1768
  text_node :authAmount, "@authAmount", :default_value=>"0"
@@ -1746,7 +1794,7 @@ module LitleOnline
1746
1794
  text_node :numUpdateSubscriptions,"@numUpdateSubscriptions", :default_value=>"0"
1747
1795
  text_node :numCreatePlans,"@numCreatePlans",:default_value=>"0"
1748
1796
  text_node :numUpdatePlans,"@numUpdatePlans",:default_value=>"0"
1749
- text_node :numActivates,"@numActivates",:default_value=>"0"
1797
+ text_node :numActivates,"@numActivates",:default_value=>"0"
1750
1798
  text_node :numDeactivates,"@numDeactivates",:default_value=>"0"
1751
1799
  text_node :activateAmount,"@activateAmount",:default_value=>"0"
1752
1800
  text_node :numLoads,"@numLoads",:default_value=>"0"
@@ -1754,61 +1802,57 @@ module LitleOnline
1754
1802
  text_node :numUnloads,"@numUnloads",:default_value=>"0"
1755
1803
  text_node :unloadAmount,"@unloadAmount",:default_value=>"0"
1756
1804
  text_node :numBalanceInquirys,"@numBalanceInquirys",:default_value=>"0"
1757
- text_node :merchantSdk,"merchantSdk",:default_value=>"0"
1805
+ text_node :merchantSdk,"merchantSdk",:default_value=>"0"
1758
1806
  end
1759
-
1807
+
1760
1808
  class LitleRequest
1761
1809
  include XML::Mapping
1762
1810
  # version="6.0" xmlns="http://www.litle.com/schema" numBatchRequests = "1">
1763
1811
  # <authentication>
1764
- # <user>XMLTESTV6ORG14</user>
1765
- # <password>password</password>
1812
+ # <user>XMLTESTV6ORG14</user>
1813
+ # <password>password</password>
1766
1814
  # </authentication>
1767
1815
  root_element_name "litleRequest"
1768
-
1816
+
1769
1817
  text_node :version, "@version", :default_value=>"0"
1770
1818
  text_node :xmlns, "@xmlns", :default_value=>nil
1771
1819
  #TODO: ask greg about sessionId
1772
1820
  #text_node :sessionId, "@id", default_vale:nil
1773
1821
  text_node :numBatchRequests, "@numBatchRequests", :default_value=>"0"
1774
- object_node :authentication, "authentication", :class=>Authentication
1822
+ object_node :authentication, "authentication", :class=>Authentication
1775
1823
  end
1776
-
1824
+
1777
1825
  class AccountUpdateFileRequestData
1778
1826
  include XML::Mapping
1779
1827
  root_element_name "accountUpdateFileRequestData"
1780
-
1828
+
1781
1829
  text_node :merchantId, "merchantId", :default_value=>nil
1782
1830
  text_node :postDay, "postDay", :default_value=>nil
1783
1831
  end
1784
-
1832
+
1785
1833
  class LitleRFRRequest
1786
1834
  include XML::Mapping
1787
1835
  root_element_name "RFRRequest"
1788
1836
  optional_choice_node :if, 'litleSessionId', :then, (text_node :litleSessionId, "litleSessionId"),
1789
1837
  :elsif, 'accountUpdateFileRequestData', :then, (object_node :accountUpdateFileRequestData, "accountUpdateFileRequestData", :class=>AccountUpdateFileRequestData)
1790
1838
  end
1791
-
1839
+
1792
1840
  class LitleRequestForRFR
1793
1841
  include XML::Mapping
1794
1842
  root_element_name "litleRequest"
1795
1843
  text_node :version, "@version", :default_value=>"0"
1796
1844
  text_node :xmlns, "@xmlns", :default_value=>nil
1797
1845
  text_node :numBatchRequests, "@numBatchRequests", :default_value=>nil
1798
- object_node :authentication, "authentication", :class=>Authentication
1846
+ object_node :authentication, "authentication", :class=>Authentication
1799
1847
  object_node :rfrRequest, 'RFRRequest', :class=>LitleRFRRequest
1800
1848
  end
1801
1849
 
1802
-
1803
-
1804
-
1805
-
1806
- # begin
1850
+ # begin
1807
1851
  # class LitleOnlineResponse
1808
- # attr_accessor :message
1852
+ # attr_accessor :message
1809
1853
  # end
1810
- #
1854
+ #
1811
1855
  # class XMLFields
1812
- #
1856
+ #
1813
1857
  # end
1814
1858
  end