ruby_omx 0.0.19 → 0.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/ruby_omx/base.rb +3 -18
- data/lib/ruby_omx/connection.rb +3 -5
- data/lib/ruby_omx/exceptions.rb +16 -54
- data/lib/ruby_omx/items.rb +32 -56
- data/lib/ruby_omx/memos.rb +4 -4
- data/lib/ruby_omx/node.rb +30 -0
- data/lib/ruby_omx/orders.rb +13 -13
- data/lib/ruby_omx/purchase_orders.rb +5 -4
- data/lib/ruby_omx/request/custom_item_info_request.rb +17 -0
- data/lib/ruby_omx/request/item_info_request.rb +16 -0
- data/lib/ruby_omx/request/item_update_request.rb +37 -0
- data/lib/ruby_omx/request/memo_submission_request.rb +21 -0
- data/lib/ruby_omx/request/order_info_request.rb +22 -0
- data/lib/ruby_omx/request/purchase_order_update_request.rb +21 -0
- data/lib/ruby_omx/request/udoa_request.rb +84 -0
- data/lib/ruby_omx/request.rb +24 -0
- data/lib/ruby_omx/response/custom_item_info_response.rb +24 -0
- data/lib/ruby_omx/response/item_info_response.rb +4 -18
- data/lib/ruby_omx/response/item_update_response.rb +15 -0
- data/lib/ruby_omx/response/memo_submission_response.rb +1 -1
- data/lib/ruby_omx/response/order_info_response.rb +25 -15
- data/lib/ruby_omx/response/purchase_order_update_response.rb +1 -4
- data/lib/ruby_omx/response/response_error.rb +3 -9
- data/lib/ruby_omx/response/smart_report_response.rb +2 -2
- data/lib/ruby_omx/response/udoa_response.rb +7 -8
- data/lib/ruby_omx/response.rb +26 -41
- data/lib/ruby_omx/version.rb +1 -1
- data/lib/ruby_omx.rb +3 -18
- data/test/base_test.rb +4 -13
- data/test/items_test.rb +76 -19
- data/test/orders_test.rb +11 -12
- data/test/purchase_orders_test.rb +5 -9
- data/test/real_config.yml +8 -0
- data/test/real_test.rb +61 -0
- metadata +17 -7
- data/lib/ruby_omx/response/custom_item_attr_info_response.rb +0 -43
- data/lib/ruby_omx/response/memo_submission_request.rb +0 -33
- data/lib/ruby_omx/response/order_info_request.rb +0 -29
- data/lib/ruby_omx/response/purchase_order_update_request.rb +0 -33
- data/lib/ruby_omx/response/udoa_request.rb +0 -94
data/test/real_test.rb
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class RealTestTest < MiniTest::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
@config = YAML.load_file( File.join(File.dirname(__FILE__), 'real_config.yml') )['real']
|
7
|
+
@connection = RubyOmx::Base.new(@config)
|
8
|
+
@line1 = { :item_code=>'WATCH-1', :quantity => 1, :price => 122.50 }
|
9
|
+
@line2 = { :item_code=>'APPLE-12', :quantity => 31, :price => 1.50 }
|
10
|
+
end
|
11
|
+
|
12
|
+
=begin
|
13
|
+
def test_real_item_update
|
14
|
+
request_attrs = {:items=> [{
|
15
|
+
:item_code => 'APPLE',
|
16
|
+
:product_status=>'True',
|
17
|
+
:incomplete_flag=>'False',
|
18
|
+
:product_name=>'Apple Product',
|
19
|
+
:product_group=>45,
|
20
|
+
:cost_of_goods=>10,
|
21
|
+
:upc_code=>'234234234',
|
22
|
+
:allow_order_line_info=>'True',
|
23
|
+
:launch_date=>'2/23/2006',
|
24
|
+
:file_sub_code=>20,
|
25
|
+
:inventory_product_flag=>'True',
|
26
|
+
:tax_code=>'TC4',
|
27
|
+
:inventory_type=>3,
|
28
|
+
:drop_ship_file_sub_code=>31 }]}
|
29
|
+
|
30
|
+
r = @connection.build_item_update_request(request_attrs)
|
31
|
+
assert_instance_of String, r.to_xml.to_s
|
32
|
+
|
33
|
+
response = @connection.append_item(request_attrs)
|
34
|
+
puts response.to_s
|
35
|
+
assert_kind_of ItemUpdateResponse, response
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_real_purchase_order
|
39
|
+
po_data = { :line_items => [@line1, @line2], :supplier_id => '76' }
|
40
|
+
r = @connection.build_purchase_order_update_request(po_data)
|
41
|
+
assert_instance_of String, r.to_xml.to_s
|
42
|
+
|
43
|
+
response = @connection.append_po(po_data)
|
44
|
+
puts response.to_s
|
45
|
+
assert_kind_of PurchaseOrderUpdateResponse, response
|
46
|
+
end
|
47
|
+
|
48
|
+
def test_real_order_info
|
49
|
+
order_info_data = { :order_number => '16651', :version=>'2.00' }
|
50
|
+
r = @connection.build_info_request(order_info_data)
|
51
|
+
assert_instance_of String, r.to_xml.to_s
|
52
|
+
puts r.to_xml.to_s
|
53
|
+
|
54
|
+
response = @connection.send_info_request(order_info_data)
|
55
|
+
puts response.to_s
|
56
|
+
assert_kind_of OrderInfoResponse, response
|
57
|
+
end
|
58
|
+
|
59
|
+
=end
|
60
|
+
|
61
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_omx
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.20
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-08-
|
12
|
+
date: 2012-08-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: roxml
|
@@ -71,19 +71,25 @@ files:
|
|
71
71
|
- lib/ruby_omx/exceptions.rb
|
72
72
|
- lib/ruby_omx/items.rb
|
73
73
|
- lib/ruby_omx/memos.rb
|
74
|
+
- lib/ruby_omx/node.rb
|
74
75
|
- lib/ruby_omx/orders.rb
|
75
76
|
- lib/ruby_omx/purchase_orders.rb
|
76
|
-
- lib/ruby_omx/
|
77
|
+
- lib/ruby_omx/request/custom_item_info_request.rb
|
78
|
+
- lib/ruby_omx/request/item_info_request.rb
|
79
|
+
- lib/ruby_omx/request/item_update_request.rb
|
80
|
+
- lib/ruby_omx/request/memo_submission_request.rb
|
81
|
+
- lib/ruby_omx/request/order_info_request.rb
|
82
|
+
- lib/ruby_omx/request/purchase_order_update_request.rb
|
83
|
+
- lib/ruby_omx/request/udoa_request.rb
|
84
|
+
- lib/ruby_omx/request.rb
|
85
|
+
- lib/ruby_omx/response/custom_item_info_response.rb
|
77
86
|
- lib/ruby_omx/response/item_info_response.rb
|
78
|
-
- lib/ruby_omx/response/
|
87
|
+
- lib/ruby_omx/response/item_update_response.rb
|
79
88
|
- lib/ruby_omx/response/memo_submission_response.rb
|
80
|
-
- lib/ruby_omx/response/order_info_request.rb
|
81
89
|
- lib/ruby_omx/response/order_info_response.rb
|
82
|
-
- lib/ruby_omx/response/purchase_order_update_request.rb
|
83
90
|
- lib/ruby_omx/response/purchase_order_update_response.rb
|
84
91
|
- lib/ruby_omx/response/response_error.rb
|
85
92
|
- lib/ruby_omx/response/smart_report_response.rb
|
86
|
-
- lib/ruby_omx/response/udoa_request.rb
|
87
93
|
- lib/ruby_omx/response/udoa_response.rb
|
88
94
|
- lib/ruby_omx/response.rb
|
89
95
|
- lib/ruby_omx/version.rb
|
@@ -96,6 +102,8 @@ files:
|
|
96
102
|
- test/memos_test.rb
|
97
103
|
- test/orders_test.rb
|
98
104
|
- test/purchase_orders_test.rb
|
105
|
+
- test/real_config.yml
|
106
|
+
- test/real_test.rb
|
99
107
|
- test/test_config.yml
|
100
108
|
- test/test_helper.rb
|
101
109
|
homepage: http://github.com/aew/ruby_omx
|
@@ -128,5 +136,7 @@ test_files:
|
|
128
136
|
- test/memos_test.rb
|
129
137
|
- test/orders_test.rb
|
130
138
|
- test/purchase_orders_test.rb
|
139
|
+
- test/real_config.yml
|
140
|
+
- test/real_test.rb
|
131
141
|
- test/test_config.yml
|
132
142
|
- test/test_helper.rb
|
@@ -1,43 +0,0 @@
|
|
1
|
-
module RubyOmx
|
2
|
-
|
3
|
-
class CustomItemAttribute < Response
|
4
|
-
xml_name "Attribute"
|
5
|
-
xml_reader :attribute_id, :from => '@attributeID'
|
6
|
-
xml_reader :name, :from => '@name'
|
7
|
-
xml_reader :value, :from => :content
|
8
|
-
end
|
9
|
-
|
10
|
-
class CIAIResponseItem < Response
|
11
|
-
xml_name "Item"
|
12
|
-
xml_reader :item_code, :from => '@itemCode'
|
13
|
-
xml_reader :active, :from => '@active'
|
14
|
-
xml_reader :attributes, :as => [CustomItemAttribute]
|
15
|
-
end
|
16
|
-
|
17
|
-
class CustomItemAttributeInformationResponse < Response
|
18
|
-
xml_name "CustomItemAttributeInformationResponse"
|
19
|
-
|
20
|
-
xml_reader :items, :as => [CIAIResponseItem], :in => "Items"
|
21
|
-
xml_reader :success
|
22
|
-
|
23
|
-
#xml_reader :item_code, :from => '@itemCode', :in => "Item"
|
24
|
-
#xml_reader :active, :from => '@active', :in => "Item"
|
25
|
-
#xml_reader :incomplete, :from => '@incomplete', :in => "Item"
|
26
|
-
#xml_reader :parent_item_code, :from => '@parentItemCode', :in => "Item"
|
27
|
-
|
28
|
-
|
29
|
-
#xml_reader :product_name, :in => "Item"
|
30
|
-
#xml_reader :available_inventory, :as => Integer, :in => "Item"
|
31
|
-
#xml_reader :sub_item_count, :as => Integer, :in => "Item"
|
32
|
-
#xml_reader :last_updated_date, :as => DateTime, :in => "Item"
|
33
|
-
#xml_reader :weight, :as => Float, :in => "Item"
|
34
|
-
|
35
|
-
#xml_reader :price_type, :from => '@priceType', :in => 'Item/PriceData'
|
36
|
-
#xml_reader :price_quantity, :from => '@quantity', :in => 'Item/PriceData/Price', :as => Integer
|
37
|
-
#xml_reader :price_amount, :from => 'Amount', :in => 'Item/PriceData/Price', :as => Float
|
38
|
-
#xml_reader :price_addl_sh, :from => 'AdditionalSH', :in => 'Item/PriceData/Price', :as => Float
|
39
|
-
#xml_reader :bonus, :in => 'Item/PriceData/Price', :as => Float
|
40
|
-
|
41
|
-
end
|
42
|
-
|
43
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
module RubyOmx
|
2
|
-
|
3
|
-
class MemoSubmissionRequest < Response
|
4
|
-
def initialize(a=nil)
|
5
|
-
return super unless a.present? # bail if no array of options has been given
|
6
|
-
http_biz_id = a.delete(:http_biz_id)
|
7
|
-
udi_auth_token = a.delete(:udi_auth_token)
|
8
|
-
|
9
|
-
self.version = a[:version] ||= '1.00'
|
10
|
-
super
|
11
|
-
|
12
|
-
self.udi_parameters = []
|
13
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'UDIAuthToken', :value=>udi_auth_token})
|
14
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'HTTPBizID', :value=>http_biz_id})
|
15
|
-
end
|
16
|
-
|
17
|
-
attr_accessor :order_number, :order_id, :store_code, :raw_xml
|
18
|
-
|
19
|
-
xml_name "MemoSubmissionRequest"
|
20
|
-
xml_accessor :version, :from => '@version'
|
21
|
-
xml_accessor :udi_parameters, :as => [RubyOmx::UDIParameter], :in => 'UDIParameter'
|
22
|
-
|
23
|
-
xml_accessor :lead_number, :in=>'Memo'
|
24
|
-
xml_accessor :customer_number, :in=>'Memo'
|
25
|
-
xml_accessor :order_number, :in=>'Memo'
|
26
|
-
xml_accessor :shipment_number, :in=>'Memo'
|
27
|
-
xml_accessor :reminder_date, :in=>'Memo', :as=>DateTime # Dates are almost the same as the W3C Schema "date" type, but with a space instead of the "T" separating the date from the time.
|
28
|
-
xml_accessor :memo_type, :in=>'Memo', :as=>Integer
|
29
|
-
xml_accessor :memo_text, :in=>'Memo'
|
30
|
-
xml_accessor :memo_transmission_date, :in=>'Memo', :as=>DateTime
|
31
|
-
|
32
|
-
end
|
33
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
#$wtf = "https://api.omx.ordermotion.com/hdde/xml/udi.asp?Wrapper=1&RequestType=OrderInformationRequest&RequestVersion=1.00&HTTPBizID=".BIZ_ID."&OrderNumber=".$OMorderid."&level=$level";
|
2
|
-
module RubyOmx
|
3
|
-
|
4
|
-
class OrderInformationRequest < Response
|
5
|
-
def initialize(a=nil)
|
6
|
-
return super unless a.present? # bail if no array of options has been given
|
7
|
-
http_biz_id = a.delete(:http_biz_id)
|
8
|
-
udi_auth_token = a.delete(:udi_auth_token)
|
9
|
-
|
10
|
-
raise MissingOrderOptions if a[:order_number].nil? && (a[:store_code].nil? || a[:order_id].nil?)
|
11
|
-
self.version = a[:version] ||= '1.00'
|
12
|
-
super
|
13
|
-
|
14
|
-
self.udi_parameters = []
|
15
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'UDIAuthToken', :value=>udi_auth_token})
|
16
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'HTTPBizID', :value=>http_biz_id})
|
17
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'OrderNumber', :value=>a[:order_number]}) if a[:order_number]
|
18
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'OrderID', :value=>a[:order_id]}) if a[:order_id]
|
19
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'StoreCode', :value=>a[:store_code]}) if a[:store_code]
|
20
|
-
self.udi_parameters << RubyOmx::UDIParameter.new({:key=>'level', :value=>a[:level] ||=2 })
|
21
|
-
end
|
22
|
-
|
23
|
-
attr_accessor :order_number, :order_id, :store_code, :raw_xml
|
24
|
-
|
25
|
-
xml_name "OrderInformationRequest"
|
26
|
-
xml_accessor :version, :from => '@version'
|
27
|
-
xml_accessor :udi_parameters, :as => [RubyOmx::UDIParameter], :in => 'UDIParameter'
|
28
|
-
end
|
29
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
module RubyOmx
|
2
|
-
|
3
|
-
class PurchaseOrderUpdateRequest < Response
|
4
|
-
def initialize(a=nil)
|
5
|
-
if a.present?
|
6
|
-
http_biz_id = a.delete(:http_biz_id)
|
7
|
-
udi_auth_token = a.delete(:udi_auth_token)
|
8
|
-
|
9
|
-
#required_fields = [:purchase_order]
|
10
|
-
#raise MissingPurchaseOrderOptions if required_fields.any? { |option| a[option].nil? }
|
11
|
-
#raise MissingPurchaseOrderOptions if a[:purchase_order][:po_number].nil? && a[:purchase_order][:supplier_id].nil?
|
12
|
-
#raise MissingPurchaseOrderOptions if a[:purchase_order][:line_items].nil?
|
13
|
-
super
|
14
|
-
self.version = a[:version] ||= '1.00'
|
15
|
-
self.udi_parameters = []
|
16
|
-
self.udi_parameters << UDIParameter.new({:key=>'UDIAuthToken', :value=>udi_auth_token})
|
17
|
-
self.udi_parameters << UDIParameter.new({:key=>'HTTPBizID', :value=>http_biz_id})
|
18
|
-
else
|
19
|
-
super
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
attr_accessor :raw_xml
|
24
|
-
|
25
|
-
xml_name "PurchaseOrderUpdateRequest"
|
26
|
-
xml_accessor :version, :from => '@version'
|
27
|
-
xml_accessor :udi_parameters, :as => [RubyOmx::UDIParameter], :in => 'UDIParameter'
|
28
|
-
|
29
|
-
xml_accessor :po_number, :from=>'@PONumber', :in=>'PurchaseOrder' #<PurchaseOrder PONumber="16651" supplierID="76">
|
30
|
-
xml_accessor :supplier_id, :from=>'@supplierID', :in=>'PurchaseOrder'
|
31
|
-
xml_accessor :line_items, :as => [RubyOmx::LineItem], :in => 'PurchaseOrder/LineDetail'
|
32
|
-
end
|
33
|
-
end
|
@@ -1,94 +0,0 @@
|
|
1
|
-
module RubyOmx
|
2
|
-
|
3
|
-
class Address < Response
|
4
|
-
xml_name "Address"
|
5
|
-
xml_accessor :address_type, :from => '@type'
|
6
|
-
xml_accessor :title_code, :company, :firstname, :lastname, :address1, :address2, :city, :state, :phone_number, :email
|
7
|
-
xml_accessor :zip, :from => 'ZIP'
|
8
|
-
xml_accessor :tld, :from => 'TLD'
|
9
|
-
end
|
10
|
-
|
11
|
-
class CustomField < Response
|
12
|
-
xml_name 'Field'
|
13
|
-
xml_accessor :field_id, :from => '@fieldID'
|
14
|
-
xml_accessor :line_number, :from => '@lineNumber'
|
15
|
-
xml_accessor :value, :from => :content
|
16
|
-
end
|
17
|
-
|
18
|
-
class Flag < Response
|
19
|
-
xml_name 'Flag'
|
20
|
-
xml_accessor :name, :from => '@name'
|
21
|
-
xml_accessor :value, :from => :content
|
22
|
-
end
|
23
|
-
|
24
|
-
class UDOARequest < Response
|
25
|
-
def initialize(a=nil)
|
26
|
-
super if a.nil?
|
27
|
-
if !a.nil?
|
28
|
-
http_biz_id = a.delete(:http_biz_id)
|
29
|
-
udi_auth_token = a.delete(:udi_auth_token)
|
30
|
-
|
31
|
-
required_fields = [:keycode, :queue_flag, :verify_flag, :order_date, :order_id, :bill_to, :line_items, :method_code]
|
32
|
-
raise MissingOrderOptions if required_fields.any? { |option| a[option].nil? }
|
33
|
-
super
|
34
|
-
self.version = a[:version] ||= '2.00'
|
35
|
-
self.payment_type = a[:payment_type] ||= '6' #6 for open invoice
|
36
|
-
self.origin_type = a[:origin_type] ||= '2' # 2 = phone order, 3 = internet order
|
37
|
-
self.udi_parameters = []
|
38
|
-
self.udi_parameters << UDIParameter.new({:key=>'UDIAuthToken', :value=>udi_auth_token})
|
39
|
-
self.udi_parameters << UDIParameter.new({:key=>'HTTPBizID', :value=>http_biz_id})
|
40
|
-
self.udi_parameters << UDIParameter.new({:key=>'Keycode', :value=>a[:keycode]})
|
41
|
-
self.udi_parameters << UDIParameter.new({:key=>'VerifyFlag', :value=>a[:verify_flag] ||= 'True' }) # Determines whether a successful order should be saved, or only verified/calculated. When set to "True", OrderMotion will behave as if the order was placed, but not return an Order Number in the response.
|
42
|
-
self.udi_parameters << UDIParameter.new({:key=>'QueueFlag', :value=>a[:queue_flag] ||= 'False' }) # Determines whether any orders with errors will be stored in the OrderMotion "Outside Order Queue", to be corrected by an OrderMotion user before resubmission. If set to "True", almost all orders will be accepted by OrderMotion, but additional order information will only be returned in the response if the order is successfully placed. Otherwise, any order with any error (eg invalid ZIP code) will be rejected.
|
43
|
-
self.udi_parameters << UDIParameter.new({:key=>'Vendor', :value=>a[:vendor] }) if !a[:vendor].nil?
|
44
|
-
self.bill_to = Address.new(a[:bill_to])
|
45
|
-
self.ship_to = Address.new(a[:ship_to])
|
46
|
-
|
47
|
-
i = 0
|
48
|
-
self.line_items = a[:line_items].collect { |h|
|
49
|
-
i+=1
|
50
|
-
h[:line_number] = h[:line_number] ||= i # Provide line numbers if they are omitted
|
51
|
-
LineItem.new(h)
|
52
|
-
}
|
53
|
-
|
54
|
-
self.custom_fields = a[:custom_fields].collect { |h| CustomField.new(h) } if !a[:custom_fields].nil?
|
55
|
-
self.flags = a[:flags].collect { |h| Flag.new(h) } if !a[:flags].nil?
|
56
|
-
else
|
57
|
-
super
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
attr_accessor :raw_xml, :keycode, :queue_flag, :verify_flag, :vendor
|
62
|
-
|
63
|
-
xml_name "UDOARequest"
|
64
|
-
xml_accessor :version, :from => '@version'
|
65
|
-
xml_accessor :udi_parameters, :as => [RubyOmx::UDIParameter], :in => 'UDIParameter'
|
66
|
-
xml_accessor :order_date, :in => 'Header', :as => DateTime # Dates are almost the same as the W3C Schema "date" type, but with a space instead of the "T" separating the date from the time.
|
67
|
-
xml_accessor :order_id, :in => 'Header', :from => 'OrderID'
|
68
|
-
xml_accessor :origin_type, :in => 'Header'
|
69
|
-
xml_accessor :store_code, :in => 'Header'
|
70
|
-
xml_accessor :bill_to, :as => Address, :in => 'Customer'
|
71
|
-
xml_accessor :flags, :as => [Flag], :in => 'Customer/FlagData'
|
72
|
-
xml_accessor :ship_to, :as => Address, :in => 'ShippingInformation'
|
73
|
-
|
74
|
-
xml_accessor :method_code, :in => 'ShippingInformation', :as => Integer
|
75
|
-
xml_accessor :shipping_amount, :in => 'ShippingInformation', :as => Float
|
76
|
-
xml_accessor :handling_amount, :in => 'ShippingInformation', :as => Float
|
77
|
-
xml_accessor :special_instructions, :in => 'ShippingInformation'
|
78
|
-
xml_accessor :gift_wrapping, :in => 'ShippingInformation'
|
79
|
-
xml_accessor :gift_message, :in => 'ShippingInformation'
|
80
|
-
|
81
|
-
xml_accessor :payment_type, :in => 'Payment', :from => '@type'
|
82
|
-
xml_accessor :card_number, :in => 'Payment'
|
83
|
-
xml_accessor :card_verification, :in => 'Payment'
|
84
|
-
xml_accessor :card_exp_date_month, :in => 'Payment'
|
85
|
-
xml_accessor :card_exp_date_year, :in => 'Payment'
|
86
|
-
xml_accessor :card_status, :in => 'Payment'
|
87
|
-
xml_accessor :card_auth_code, :in => 'Payment'
|
88
|
-
xml_accessor :card_transaction_id, :from => 'CardTransactionID', :in => 'Payment'
|
89
|
-
|
90
|
-
xml_accessor :line_items, :as => [RubyOmx::LineItem], :in => 'OrderDetail'
|
91
|
-
xml_accessor :custom_fields, :as => [CustomField], :in => 'CustomFields/Report'
|
92
|
-
xml_accessor :total_amount, :in => 'Check'
|
93
|
-
end
|
94
|
-
end
|