active_fulfillment 2.0.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/active_fulfillment.rb +4 -18
- data/lib/active_fulfillment/fulfillment/services/amazon_mws.rb +438 -0
- data/lib/active_fulfillment/fulfillment/services/shipwire.rb +39 -34
- data/lib/active_fulfillment/fulfillment/services/webgistix.rb +5 -1
- data/lib/active_fulfillment/fulfillment/version.rb +6 -0
- data/test/fixtures/xml/amazon_mws/fulfillment_get_fulfillment_order.xml +114 -0
- data/test/fixtures/xml/amazon_mws/fulfillment_get_fulfillment_order_2.xml +90 -0
- data/test/fixtures/xml/amazon_mws/fulfillment_get_fullfillment_order_with_multiple_tracking_numbers.xml +121 -0
- data/test/fixtures/xml/amazon_mws/fulfillment_list_all_fulfillment_orders.xml +70 -0
- data/test/fixtures/xml/amazon_mws/inventory_list_inventory_item_supply.xml +32 -0
- data/test/fixtures/xml/amazon_mws/inventory_list_inventory_supply.xml +75 -0
- data/test/fixtures/xml/amazon_mws/inventory_list_inventory_supply_by_next_token.xml +38 -0
- data/test/fixtures/xml/amazon_mws/tracking_response_error.xml +9 -0
- data/test/fixtures/xml/amazon_mws/tracking_response_not_found.xml +9 -0
- data/test/fixtures/xml/shipwire/fulfillment_failure_response.xml +7 -0
- data/test/fixtures/xml/shipwire/invalid_login_response.xml +7 -0
- data/test/fixtures/xml/shipwire/inventory_get_response.xml +44 -0
- data/test/fixtures/xml/shipwire/successful_empty_tracking_response.xml +8 -0
- data/test/fixtures/xml/shipwire/successful_live_tracking_response.xml +53 -0
- data/test/fixtures/xml/shipwire/successful_tracking_response.xml +16 -0
- data/test/fixtures/xml/shipwire/successful_tracking_response_with_tracking_urls.xml +31 -0
- data/test/fixtures/xml/webgistix/multiple_tracking_response.xml +21 -0
- data/test/remote/amazon_mws_test.rb +114 -0
- data/test/unit/services/amazon_mws_test.rb +357 -0
- data/test/unit/services/shipwire_test.rb +20 -95
- data/test/unit/services/webgistix_test.rb +12 -1
- metadata +57 -11
- data/Rakefile +0 -36
- data/VERSION +0 -1
- data/active_fulfillment.gemspec +0 -70
- data/init.rb +0 -1
@@ -8,17 +8,17 @@ module ActiveMerchant
|
|
8
8
|
:inventory => 'https://api.shipwire.com/exec/InventoryServices.php',
|
9
9
|
:tracking => 'https://api.shipwire.com/exec/TrackingServices.php'
|
10
10
|
}
|
11
|
-
|
11
|
+
|
12
12
|
SCHEMA_URLS = { :fulfillment => 'http://www.shipwire.com/exec/download/OrderList.dtd',
|
13
13
|
:inventory => 'http://www.shipwire.com/exec/download/InventoryUpdate.dtd',
|
14
14
|
:tracking => 'http://www.shipwire.com/exec/download/TrackingUpdate.dtd'
|
15
15
|
}
|
16
|
-
|
16
|
+
|
17
17
|
POST_VARS = { :fulfillment => 'OrderListXML',
|
18
18
|
:inventory => 'InventoryUpdateXML',
|
19
19
|
:tracking => 'TrackingUpdateXML'
|
20
20
|
}
|
21
|
-
|
21
|
+
|
22
22
|
WAREHOUSES = { 'CHI' => 'Chicago',
|
23
23
|
'LAX' => 'Los Angeles',
|
24
24
|
'REN' => 'Reno',
|
@@ -26,7 +26,7 @@ module ActiveMerchant
|
|
26
26
|
'TOR' => 'Toronto',
|
27
27
|
'UK' => 'United Kingdom'
|
28
28
|
}
|
29
|
-
|
29
|
+
|
30
30
|
INVALID_LOGIN = /(Error with Valid Username\/EmailAddress and Password Required)|(Could not verify Username\/EmailAddress and Password combination)/
|
31
31
|
|
32
32
|
class_attribute :affiliate_id
|
@@ -40,32 +40,32 @@ module ActiveMerchant
|
|
40
40
|
['International', 'INTL']
|
41
41
|
].inject(ActiveSupport::OrderedHash.new){|h, (k,v)| h[k] = v; h}
|
42
42
|
end
|
43
|
-
|
43
|
+
|
44
44
|
# Pass in the login and password for the shipwire account.
|
45
45
|
# Optionally pass in the :test => true to force test mode
|
46
46
|
def initialize(options = {})
|
47
47
|
requires!(options, :login, :password)
|
48
|
-
|
48
|
+
|
49
49
|
super
|
50
50
|
end
|
51
51
|
|
52
52
|
def fulfill(order_id, shipping_address, line_items, options = {})
|
53
53
|
commit :fulfillment, build_fulfillment_request(order_id, shipping_address, line_items, options)
|
54
54
|
end
|
55
|
-
|
55
|
+
|
56
56
|
def fetch_stock_levels(options = {})
|
57
57
|
commit :inventory, build_inventory_request(options)
|
58
58
|
end
|
59
|
-
|
59
|
+
|
60
60
|
def fetch_tracking_numbers(order_ids)
|
61
61
|
commit :tracking, build_tracking_request(order_ids)
|
62
62
|
end
|
63
|
-
|
63
|
+
|
64
64
|
def valid_credentials?
|
65
65
|
response = fetch_tracking_numbers([])
|
66
66
|
response.message !~ INVALID_LOGIN
|
67
67
|
end
|
68
|
-
|
68
|
+
|
69
69
|
def test_mode?
|
70
70
|
true
|
71
71
|
end
|
@@ -86,11 +86,11 @@ module ActiveMerchant
|
|
86
86
|
xml.tag! 'OrderList' do
|
87
87
|
add_credentials(xml)
|
88
88
|
xml.tag! 'Referer', 'Active Fulfillment'
|
89
|
-
add_order(xml, order_id, shipping_address, line_items, options)
|
89
|
+
add_order(xml, order_id, shipping_address, line_items, options)
|
90
90
|
end
|
91
91
|
xml.target!
|
92
92
|
end
|
93
|
-
|
93
|
+
|
94
94
|
def build_inventory_request(options)
|
95
95
|
xml = Builder::XmlMarkup.new :indent => 2
|
96
96
|
xml.instruct!
|
@@ -102,7 +102,7 @@ module ActiveMerchant
|
|
102
102
|
xml.tag! 'IncludeEmpty' if include_empty_stock?
|
103
103
|
end
|
104
104
|
end
|
105
|
-
|
105
|
+
|
106
106
|
def build_tracking_request(order_ids)
|
107
107
|
xml = Builder::XmlMarkup.new
|
108
108
|
xml.instruct!
|
@@ -144,16 +144,16 @@ module ActiveMerchant
|
|
144
144
|
xml.tag! 'Name' do
|
145
145
|
xml.tag! 'Full', address[:name]
|
146
146
|
end
|
147
|
-
|
147
|
+
|
148
148
|
xml.tag! 'Address1', address[:address1]
|
149
149
|
xml.tag! 'Address2', address[:address2]
|
150
150
|
|
151
151
|
xml.tag! 'Company', address[:company]
|
152
|
-
|
152
|
+
|
153
153
|
xml.tag! 'City', address[:city]
|
154
154
|
xml.tag! 'State', address[:state] unless address[:state].blank?
|
155
155
|
xml.tag! 'Country', address[:country]
|
156
|
-
|
156
|
+
|
157
157
|
xml.tag! 'Zip', address[:zip]
|
158
158
|
xml.tag! 'Phone', address[:phone] unless address[:phone].blank?
|
159
159
|
xml.tag! 'Email', options[:email] unless options[:email].blank?
|
@@ -170,15 +170,15 @@ module ActiveMerchant
|
|
170
170
|
|
171
171
|
def commit(action, request)
|
172
172
|
data = ssl_post(SERVICE_URLS[action], "#{POST_VARS[action]}=#{CGI.escape(request)}")
|
173
|
-
|
173
|
+
|
174
174
|
response = parse_response(action, data)
|
175
175
|
Response.new(response[:success], response[:message], response, :test => test?)
|
176
176
|
end
|
177
|
-
|
177
|
+
|
178
178
|
def parse_response(action, data)
|
179
179
|
case action
|
180
180
|
when :fulfillment
|
181
|
-
parse_fulfillment_response(data)
|
181
|
+
parse_fulfillment_response(data)
|
182
182
|
when :inventory
|
183
183
|
parse_inventory_response(data)
|
184
184
|
when :tracking
|
@@ -187,24 +187,24 @@ module ActiveMerchant
|
|
187
187
|
raise ArgumentError, "Unknown action #{action}"
|
188
188
|
end
|
189
189
|
end
|
190
|
-
|
190
|
+
|
191
191
|
def parse_fulfillment_response(xml)
|
192
192
|
response = {}
|
193
|
-
|
193
|
+
|
194
194
|
document = REXML::Document.new(xml)
|
195
195
|
document.root.elements.each do |node|
|
196
196
|
response[node.name.underscore.to_sym] = text_content(node)
|
197
197
|
end
|
198
|
-
|
198
|
+
|
199
199
|
response[:success] = response[:status] == '0'
|
200
|
-
response[:message] = response[:success] ? "Successfully submitted the order" : message_from(response[:error_message])
|
200
|
+
response[:message] = response[:success] ? "Successfully submitted the order" : message_from(response[:error_message])
|
201
201
|
response
|
202
202
|
end
|
203
|
-
|
203
|
+
|
204
204
|
def parse_inventory_response(xml)
|
205
205
|
response = {}
|
206
206
|
response[:stock_levels] = {}
|
207
|
-
|
207
|
+
|
208
208
|
document = REXML::Document.new(xml)
|
209
209
|
document.root.elements.each do |node|
|
210
210
|
if node.name == 'Product'
|
@@ -217,35 +217,40 @@ module ActiveMerchant
|
|
217
217
|
response[node.name.underscore.to_sym] = text_content(node)
|
218
218
|
end
|
219
219
|
end
|
220
|
-
|
220
|
+
|
221
221
|
response[:success] = test? ? response[:status] == 'Test' : response[:status] == '0'
|
222
222
|
response[:message] = response[:success] ? "Successfully received the stock levels" : message_from(response[:error_message])
|
223
|
-
|
223
|
+
|
224
224
|
response
|
225
225
|
end
|
226
|
-
|
226
|
+
|
227
227
|
def parse_tracking_response(xml)
|
228
|
-
response = {}
|
228
|
+
response = Hash.new { |hash, key| hash[key] = {} }
|
229
229
|
response[:tracking_numbers] = {}
|
230
|
-
|
230
|
+
|
231
231
|
document = REXML::Document.new(xml)
|
232
|
-
|
233
232
|
document.root.elements.each do |node|
|
234
233
|
if node.name == 'Order'
|
235
234
|
if node.attributes["shipped"] == "YES" && node.elements['TrackingNumber']
|
236
|
-
tracking_number = node.elements['TrackingNumber'].text
|
235
|
+
tracking_number = node.elements['TrackingNumber'].text.strip
|
237
236
|
response[:tracking_numbers][node.attributes['id']] = [tracking_number]
|
237
|
+
|
238
|
+
tracking_company = node.elements['TrackingNumber'].attributes['carrier']
|
239
|
+
response[:tracking_company][node.attributes['id']] = tracking_company.strip if tracking_company
|
240
|
+
|
241
|
+
tracking_url = node.elements['TrackingNumber'].attributes['href']
|
242
|
+
response[:tracking_urls][node.attributes['id']] = [tracking_url.strip] if tracking_url
|
238
243
|
end
|
239
244
|
else
|
240
245
|
response[node.name.underscore.to_sym] = text_content(node)
|
241
246
|
end
|
242
247
|
end
|
243
|
-
|
248
|
+
|
244
249
|
response[:success] = test? ? (response[:status] == '0' || response[:status] == 'Test') : response[:status] == '0'
|
245
250
|
response[:message] = response[:success] ? "Successfully received the tracking numbers" : message_from(response[:error_message])
|
246
251
|
response
|
247
252
|
end
|
248
|
-
|
253
|
+
|
249
254
|
def message_from(string)
|
250
255
|
return if string.blank?
|
251
256
|
string.gsub("\n", '').squeeze(" ")
|
@@ -301,7 +301,11 @@ module ActiveMerchant
|
|
301
301
|
params = node.elements.to_a.each_with_object({}) {|elem, hash| hash[elem.name] = elem.text}
|
302
302
|
|
303
303
|
tracking = params['ShipmentTrackingNumber']
|
304
|
-
|
304
|
+
|
305
|
+
unless tracking == NOT_SHIPPED
|
306
|
+
response[:tracking_numbers][params['InvoiceNumber']] ||= []
|
307
|
+
response[:tracking_numbers][params['InvoiceNumber']] << tracking
|
308
|
+
end
|
305
309
|
end
|
306
310
|
|
307
311
|
response
|
@@ -0,0 +1,114 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<GetFulfillmentOrderResponse
|
3
|
+
xmlns="http://mws.amazonaws.com/FulfillmentOutboundShipment/2010-10-01/">
|
4
|
+
<GetFulfillmentOrderResult>
|
5
|
+
<FulfillmentOrderItem>
|
6
|
+
<member>
|
7
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
8
|
+
<GiftMessage>test_giftwrap_message</GiftMessage>
|
9
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
10
|
+
</SellerFulfillmentOrderItemId>
|
11
|
+
<EstimatedShipDateTime>2008-03-08T07:07:53Z
|
12
|
+
</EstimatedShipDateTime>
|
13
|
+
<DisplayableComment>test_displayable_comment</DisplayableComment>
|
14
|
+
<OrderItemDisposition>Sellable</OrderItemDisposition>
|
15
|
+
<UnfulfillableQuantity>0</UnfulfillableQuantity>
|
16
|
+
<CancelledQuantity>1</CancelledQuantity>
|
17
|
+
<Quantity>5</Quantity>
|
18
|
+
<EstimatedArrivalDateTime>2008-03-08T08:07:53Z
|
19
|
+
</EstimatedArrivalDateTime>
|
20
|
+
</member>
|
21
|
+
<member>
|
22
|
+
<SellerSKU>ssof_dev_drt_keep_this_afn_always</SellerSKU>
|
23
|
+
<GiftMessage>test_giftwrap_message</GiftMessage>
|
24
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_1
|
25
|
+
</SellerFulfillmentOrderItemId>
|
26
|
+
<EstimatedShipDateTime>2008-03-09T07:07:53Z
|
27
|
+
</EstimatedShipDateTime>
|
28
|
+
<DisplayableComment>test_displayable_comment
|
29
|
+
</DisplayableComment>
|
30
|
+
<OrderItemDisposition>Sellable</OrderItemDisposition>
|
31
|
+
<UnfulfillableQuantity>2</UnfulfillableQuantity>
|
32
|
+
<CancelledQuantity>1</CancelledQuantity>
|
33
|
+
<Quantity>5</Quantity>
|
34
|
+
<EstimatedArrivalDateTime>2008-03-09T08:07:53Z
|
35
|
+
</EstimatedArrivalDateTime>
|
36
|
+
</member>
|
37
|
+
</FulfillmentOrderItem>
|
38
|
+
<FulfillmentOrder>
|
39
|
+
<ShippingSpeedCategory>Standard</ShippingSpeedCategory>
|
40
|
+
<NotificationEmailList>
|
41
|
+
<member>o8c2EXAMPLsfr7o@marketplace.amazon.com</member>
|
42
|
+
</NotificationEmailList>
|
43
|
+
<StatusUpdatedDateTime>2006-09-28T23:48:48Z
|
44
|
+
</StatusUpdatedDateTime>
|
45
|
+
<SellerFulfillmentOrderId>extern_id_1154539615776
|
46
|
+
</SellerFulfillmentOrderId>
|
47
|
+
<DestinationAddress>
|
48
|
+
<PostalCode>98101</PostalCode>
|
49
|
+
<PhoneNumber>206-555-1928</PhoneNumber>
|
50
|
+
<Name>Greg Miller</Name>
|
51
|
+
<CountryCode>US</CountryCode>
|
52
|
+
<Line1>123 Some St.</Line1>
|
53
|
+
<StateOrProvinceCode>WA</StateOrProvinceCode>
|
54
|
+
<City>Seattle</City>
|
55
|
+
<Line2>Apt. 321</Line2>
|
56
|
+
</DestinationAddress>
|
57
|
+
<FulfillmentMethod>Consumer</FulfillmentMethod>
|
58
|
+
<DisplayableOrderDateTime>2006-08-02T17:26:56Z
|
59
|
+
</DisplayableOrderDateTime>
|
60
|
+
<FulfillmentPolicy>FillOrKill</FulfillmentPolicy>
|
61
|
+
<ReceivedDateTime>2006-08-02T17:26:56Z</ReceivedDateTime>
|
62
|
+
<DisplayableOrderId>test_displayable_id</DisplayableOrderId>
|
63
|
+
<DisplayableOrderComment>Sample comment.
|
64
|
+
</DisplayableOrderComment>
|
65
|
+
<FulfillmentOrderStatus>PROCESSING</FulfillmentOrderStatus>
|
66
|
+
</FulfillmentOrder>
|
67
|
+
<FulfillmentShipment>
|
68
|
+
<member>
|
69
|
+
<FulfillmentShipmentStatus>PENDING</FulfillmentShipmentStatus>
|
70
|
+
<FulfillmentShipmentItem>
|
71
|
+
<member>
|
72
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
73
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
74
|
+
</SellerFulfillmentOrderItemId>
|
75
|
+
<Quantity>2</Quantity>
|
76
|
+
<PackageNumber>0</PackageNumber>
|
77
|
+
</member>
|
78
|
+
</FulfillmentShipmentItem>
|
79
|
+
<AmazonShipmentId>DnMDLWJWN</AmazonShipmentId>
|
80
|
+
<ShippingDateTime>2006-08-04T07:00:00Z</ShippingDateTime>
|
81
|
+
<FulfillmentCenterId>RNO1</FulfillmentCenterId>
|
82
|
+
<EstimatedArrivalDateTime>2006-08-12T07:00:00Z
|
83
|
+
</EstimatedArrivalDateTime>
|
84
|
+
</member>
|
85
|
+
<member>
|
86
|
+
<FulfillmentShipmentStatus>SHIPPED</FulfillmentShipmentStatus>
|
87
|
+
<FulfillmentShipmentItem>
|
88
|
+
<member>
|
89
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
90
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
91
|
+
</SellerFulfillmentOrderItemId>
|
92
|
+
<Quantity>1</Quantity>
|
93
|
+
<PackageNumber>1</PackageNumber>
|
94
|
+
</member>
|
95
|
+
</FulfillmentShipmentItem>
|
96
|
+
<AmazonShipmentId>DKMKLXJmN</AmazonShipmentId>
|
97
|
+
<ShippingDateTime>2006-08-03T07:00:00Z</ShippingDateTime>
|
98
|
+
<FulfillmentShipmentPackage>
|
99
|
+
<member>
|
100
|
+
<TrackingNumber>93ZZ00</TrackingNumber>
|
101
|
+
<CarrierCode>UPS</CarrierCode>
|
102
|
+
<PackageNumber>1</PackageNumber>
|
103
|
+
</member>
|
104
|
+
</FulfillmentShipmentPackage>
|
105
|
+
<FulfillmentCenterId>TST1</FulfillmentCenterId>
|
106
|
+
<EstimatedArrivalDateTime>2006-08-12T07:00:00Z
|
107
|
+
</EstimatedArrivalDateTime>
|
108
|
+
</member>
|
109
|
+
</FulfillmentShipment>
|
110
|
+
</GetFulfillmentOrderResult>
|
111
|
+
<ResponseMetadata>
|
112
|
+
<RequestId>5e5e5694-8e76-11df-929f-87c80302f8f6</RequestId>
|
113
|
+
</ResponseMetadata>
|
114
|
+
</GetFulfillmentOrderResponse>
|
@@ -0,0 +1,90 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<GetFulfillmentOrderResponse
|
3
|
+
xmlns="http://mws.amazonaws.com/FulfillmentOutboundShipment/2010-10-01/">
|
4
|
+
<GetFulfillmentOrderResult>
|
5
|
+
<FulfillmentOrderItem>
|
6
|
+
<member>
|
7
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
8
|
+
<GiftMessage>test_giftwrap_message</GiftMessage>
|
9
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
10
|
+
</SellerFulfillmentOrderItemId>
|
11
|
+
<EstimatedShipDateTime>2008-03-08T07:07:53Z
|
12
|
+
</EstimatedShipDateTime>
|
13
|
+
<DisplayableComment>test_displayable_comment</DisplayableComment>
|
14
|
+
<OrderItemDisposition>Sellable</OrderItemDisposition>
|
15
|
+
<UnfulfillableQuantity>0</UnfulfillableQuantity>
|
16
|
+
<CancelledQuantity>1</CancelledQuantity>
|
17
|
+
<Quantity>5</Quantity>
|
18
|
+
<EstimatedArrivalDateTime>2008-03-08T08:07:53Z
|
19
|
+
</EstimatedArrivalDateTime>
|
20
|
+
</member>
|
21
|
+
<member>
|
22
|
+
<SellerSKU>ssof_dev_drt_keep_this_afn_always</SellerSKU>
|
23
|
+
<GiftMessage>test_giftwrap_message</GiftMessage>
|
24
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_1
|
25
|
+
</SellerFulfillmentOrderItemId>
|
26
|
+
<EstimatedShipDateTime>2008-03-09T07:07:53Z
|
27
|
+
</EstimatedShipDateTime>
|
28
|
+
<DisplayableComment>test_displayable_comment
|
29
|
+
</DisplayableComment>
|
30
|
+
<OrderItemDisposition>Sellable</OrderItemDisposition>
|
31
|
+
<UnfulfillableQuantity>2</UnfulfillableQuantity>
|
32
|
+
<CancelledQuantity>1</CancelledQuantity>
|
33
|
+
<Quantity>5</Quantity>
|
34
|
+
<EstimatedArrivalDateTime>2008-03-09T08:07:53Z
|
35
|
+
</EstimatedArrivalDateTime>
|
36
|
+
</member>
|
37
|
+
</FulfillmentOrderItem>
|
38
|
+
<FulfillmentOrder>
|
39
|
+
<ShippingSpeedCategory>Standard</ShippingSpeedCategory>
|
40
|
+
<NotificationEmailList>
|
41
|
+
<member>o8c2EXAMPLsfr7o@marketplace.amazon.com</member>
|
42
|
+
</NotificationEmailList>
|
43
|
+
<StatusUpdatedDateTime>2006-09-28T23:48:48Z
|
44
|
+
</StatusUpdatedDateTime>
|
45
|
+
<SellerFulfillmentOrderId>extern_id_1154539615777
|
46
|
+
</SellerFulfillmentOrderId>
|
47
|
+
<DestinationAddress>
|
48
|
+
<PostalCode>98101</PostalCode>
|
49
|
+
<PhoneNumber>206-555-1928</PhoneNumber>
|
50
|
+
<Name>Greg Miller</Name>
|
51
|
+
<CountryCode>US</CountryCode>
|
52
|
+
<Line1>123 Some St.</Line1>
|
53
|
+
<StateOrProvinceCode>WA</StateOrProvinceCode>
|
54
|
+
<City>Seattle</City>
|
55
|
+
<Line2>Apt. 321</Line2>
|
56
|
+
</DestinationAddress>
|
57
|
+
<FulfillmentMethod>Consumer</FulfillmentMethod>
|
58
|
+
<DisplayableOrderDateTime>2006-08-02T17:26:56Z
|
59
|
+
</DisplayableOrderDateTime>
|
60
|
+
<FulfillmentPolicy>FillOrKill</FulfillmentPolicy>
|
61
|
+
<ReceivedDateTime>2006-08-02T17:26:56Z</ReceivedDateTime>
|
62
|
+
<DisplayableOrderId>test_displayable_id</DisplayableOrderId>
|
63
|
+
<DisplayableOrderComment>Sample comment.
|
64
|
+
</DisplayableOrderComment>
|
65
|
+
<FulfillmentOrderStatus>PROCESSING</FulfillmentOrderStatus>
|
66
|
+
</FulfillmentOrder>
|
67
|
+
<FulfillmentShipment>
|
68
|
+
<member>
|
69
|
+
<FulfillmentShipmentStatus>PENDING</FulfillmentShipmentStatus>
|
70
|
+
<FulfillmentShipmentItem>
|
71
|
+
<member>
|
72
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
73
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
74
|
+
</SellerFulfillmentOrderItemId>
|
75
|
+
<Quantity>2</Quantity>
|
76
|
+
<PackageNumber>0</PackageNumber>
|
77
|
+
</member>
|
78
|
+
</FulfillmentShipmentItem>
|
79
|
+
<AmazonShipmentId>DnMDLWJWN</AmazonShipmentId>
|
80
|
+
<ShippingDateTime>2006-08-04T07:00:00Z</ShippingDateTime>
|
81
|
+
<FulfillmentCenterId>RNO1</FulfillmentCenterId>
|
82
|
+
<EstimatedArrivalDateTime>2006-08-12T07:00:00Z
|
83
|
+
</EstimatedArrivalDateTime>
|
84
|
+
</member>
|
85
|
+
</FulfillmentShipment>
|
86
|
+
</GetFulfillmentOrderResult>
|
87
|
+
<ResponseMetadata>
|
88
|
+
<RequestId>5e5e5694-8e76-11df-929f-87c80302f8f6</RequestId>
|
89
|
+
</ResponseMetadata>
|
90
|
+
</GetFulfillmentOrderResponse>
|
@@ -0,0 +1,121 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<GetFulfillmentOrderResponse
|
3
|
+
xmlns="http://mws.amazonaws.com/FulfillmentOutboundShipment/2010-10-01/">
|
4
|
+
<GetFulfillmentOrderResult>
|
5
|
+
<FulfillmentOrderItem>
|
6
|
+
<member>
|
7
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
8
|
+
<GiftMessage>test_giftwrap_message</GiftMessage>
|
9
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
10
|
+
</SellerFulfillmentOrderItemId>
|
11
|
+
<EstimatedShipDateTime>2008-03-08T07:07:53Z
|
12
|
+
</EstimatedShipDateTime>
|
13
|
+
<DisplayableComment>test_displayable_comment</DisplayableComment>
|
14
|
+
<OrderItemDisposition>Sellable</OrderItemDisposition>
|
15
|
+
<UnfulfillableQuantity>0</UnfulfillableQuantity>
|
16
|
+
<CancelledQuantity>1</CancelledQuantity>
|
17
|
+
<Quantity>5</Quantity>
|
18
|
+
<EstimatedArrivalDateTime>2008-03-08T08:07:53Z
|
19
|
+
</EstimatedArrivalDateTime>
|
20
|
+
</member>
|
21
|
+
<member>
|
22
|
+
<SellerSKU>ssof_dev_drt_keep_this_afn_always</SellerSKU>
|
23
|
+
<GiftMessage>test_giftwrap_message</GiftMessage>
|
24
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_1
|
25
|
+
</SellerFulfillmentOrderItemId>
|
26
|
+
<EstimatedShipDateTime>2008-03-09T07:07:53Z
|
27
|
+
</EstimatedShipDateTime>
|
28
|
+
<DisplayableComment>test_displayable_comment
|
29
|
+
</DisplayableComment>
|
30
|
+
<OrderItemDisposition>Sellable</OrderItemDisposition>
|
31
|
+
<UnfulfillableQuantity>2</UnfulfillableQuantity>
|
32
|
+
<CancelledQuantity>1</CancelledQuantity>
|
33
|
+
<Quantity>5</Quantity>
|
34
|
+
<EstimatedArrivalDateTime>2008-03-09T08:07:53Z
|
35
|
+
</EstimatedArrivalDateTime>
|
36
|
+
</member>
|
37
|
+
</FulfillmentOrderItem>
|
38
|
+
<FulfillmentOrder>
|
39
|
+
<ShippingSpeedCategory>Standard</ShippingSpeedCategory>
|
40
|
+
<NotificationEmailList>
|
41
|
+
<member>o8c2EXAMPLsfr7o@marketplace.amazon.com</member>
|
42
|
+
</NotificationEmailList>
|
43
|
+
<StatusUpdatedDateTime>2006-09-28T23:48:48Z
|
44
|
+
</StatusUpdatedDateTime>
|
45
|
+
<SellerFulfillmentOrderId>extern_id_1154539615776
|
46
|
+
</SellerFulfillmentOrderId>
|
47
|
+
<DestinationAddress>
|
48
|
+
<PostalCode>98101</PostalCode>
|
49
|
+
<PhoneNumber>206-555-1928</PhoneNumber>
|
50
|
+
<Name>Greg Miller</Name>
|
51
|
+
<CountryCode>US</CountryCode>
|
52
|
+
<Line1>123 Some St.</Line1>
|
53
|
+
<StateOrProvinceCode>WA</StateOrProvinceCode>
|
54
|
+
<City>Seattle</City>
|
55
|
+
<Line2>Apt. 321</Line2>
|
56
|
+
</DestinationAddress>
|
57
|
+
<FulfillmentMethod>Consumer</FulfillmentMethod>
|
58
|
+
<DisplayableOrderDateTime>2006-08-02T17:26:56Z
|
59
|
+
</DisplayableOrderDateTime>
|
60
|
+
<FulfillmentPolicy>FillOrKill</FulfillmentPolicy>
|
61
|
+
<ReceivedDateTime>2006-08-02T17:26:56Z</ReceivedDateTime>
|
62
|
+
<DisplayableOrderId>test_displayable_id</DisplayableOrderId>
|
63
|
+
<DisplayableOrderComment>Sample comment.
|
64
|
+
</DisplayableOrderComment>
|
65
|
+
<FulfillmentOrderStatus>PROCESSING</FulfillmentOrderStatus>
|
66
|
+
</FulfillmentOrder>
|
67
|
+
<FulfillmentShipment>
|
68
|
+
<member>
|
69
|
+
<FulfillmentShipmentStatus>SHIPPED</FulfillmentShipmentStatus>
|
70
|
+
<FulfillmentShipmentItem>
|
71
|
+
<member>
|
72
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
73
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
74
|
+
</SellerFulfillmentOrderItemId>
|
75
|
+
<Quantity>2</Quantity>
|
76
|
+
<PackageNumber>0</PackageNumber>
|
77
|
+
</member>
|
78
|
+
</FulfillmentShipmentItem>
|
79
|
+
<AmazonShipmentId>DnMDLWJWN</AmazonShipmentId>
|
80
|
+
<ShippingDateTime>2006-08-04T07:00:00Z</ShippingDateTime>
|
81
|
+
<FulfillmentShipmentPackage>
|
82
|
+
<member>
|
83
|
+
<TrackingNumber>93YY00</TrackingNumber>
|
84
|
+
<CarrierCode>UPS</CarrierCode>
|
85
|
+
<PackageNumber>1</PackageNumber>
|
86
|
+
</member>
|
87
|
+
</FulfillmentShipmentPackage>
|
88
|
+
<FulfillmentCenterId>RNO1</FulfillmentCenterId>
|
89
|
+
<EstimatedArrivalDateTime>2006-08-12T07:00:00Z
|
90
|
+
</EstimatedArrivalDateTime>
|
91
|
+
</member>
|
92
|
+
<member>
|
93
|
+
<FulfillmentShipmentStatus>SHIPPED</FulfillmentShipmentStatus>
|
94
|
+
<FulfillmentShipmentItem>
|
95
|
+
<member>
|
96
|
+
<SellerSKU>ssof_dev_drt_afn_item</SellerSKU>
|
97
|
+
<SellerFulfillmentOrderItemId>test_merchant_order_item_id_2
|
98
|
+
</SellerFulfillmentOrderItemId>
|
99
|
+
<Quantity>1</Quantity>
|
100
|
+
<PackageNumber>1</PackageNumber>
|
101
|
+
</member>
|
102
|
+
</FulfillmentShipmentItem>
|
103
|
+
<AmazonShipmentId>DKMKLXJmN</AmazonShipmentId>
|
104
|
+
<ShippingDateTime>2006-08-03T07:00:00Z</ShippingDateTime>
|
105
|
+
<FulfillmentShipmentPackage>
|
106
|
+
<member>
|
107
|
+
<TrackingNumber>93ZZ00</TrackingNumber>
|
108
|
+
<CarrierCode>UPS</CarrierCode>
|
109
|
+
<PackageNumber>1</PackageNumber>
|
110
|
+
</member>
|
111
|
+
</FulfillmentShipmentPackage>
|
112
|
+
<FulfillmentCenterId>TST1</FulfillmentCenterId>
|
113
|
+
<EstimatedArrivalDateTime>2006-08-12T07:00:00Z
|
114
|
+
</EstimatedArrivalDateTime>
|
115
|
+
</member>
|
116
|
+
</FulfillmentShipment>
|
117
|
+
</GetFulfillmentOrderResult>
|
118
|
+
<ResponseMetadata>
|
119
|
+
<RequestId>5e5e5694-8e76-11df-929f-87c80302f8f6</RequestId>
|
120
|
+
</ResponseMetadata>
|
121
|
+
</GetFulfillmentOrderResponse>
|