peddler 1.6.7 → 2.0.0
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.
- checksums.yaml +4 -4
- data/README.md +69 -67
- data/lib/mws/feeds/client.rb +15 -12
- data/lib/mws/finances/client.rb +12 -11
- data/lib/mws/fulfillment_inbound_shipment/client.rb +79 -107
- data/lib/mws/fulfillment_inventory/client.rb +5 -5
- data/lib/mws/fulfillment_outbound_shipment/client.rb +36 -44
- data/lib/mws/merchant_fulfillment/client.rb +11 -17
- data/lib/mws/off_amazon_payments/client.rb +38 -68
- data/lib/mws/orders/client.rb +28 -24
- data/lib/mws/products/client.rb +118 -153
- data/lib/mws/recommendations/client.rb +13 -17
- data/lib/mws/reports/client.rb +24 -23
- data/lib/mws/sellers/client.rb +5 -5
- data/lib/mws/subscriptions/client.rb +25 -36
- data/lib/peddler/client.rb +47 -124
- data/lib/peddler/errors/builder.rb +40 -14
- data/lib/peddler/errors/class_generator.rb +34 -0
- data/lib/peddler/errors/error.rb +13 -3
- data/lib/peddler/headers.rb +27 -11
- data/lib/peddler/marketplace.rb +30 -11
- data/lib/peddler/vcr_matcher.rb +11 -1
- data/lib/peddler/version.rb +1 -1
- data/lib/peddler/xml_parser.rb +4 -2
- data/lib/peddler/xml_response_parser.rb +1 -1
- data/test/helper.rb +0 -1
- data/test/integration/test_errors.rb +2 -14
- data/test/integration/test_feeds.rb +0 -3
- data/test/integration/test_multibyte_queries.rb +1 -1
- data/test/integration/test_mws_headers.rb +3 -2
- data/test/integration/test_orders.rb +2 -1
- data/test/integration/test_products.rb +9 -9
- data/test/integration/test_recommendations.rb +1 -1
- data/test/integration/test_subscriptions.rb +2 -2
- data/test/integration_helper.rb +1 -1
- data/test/mws.yml +36 -0
- data/test/mws.yml.example +8 -12
- data/test/null_client.rb +10 -8
- data/test/unit/mws/test_feeds_client.rb +1 -2
- data/test/unit/mws/test_fulfillment_outbound_shipment_client.rb +1 -1
- data/test/unit/mws/test_off_amazon_payments_client.rb +1 -1
- data/test/unit/mws/test_orders_client.rb +7 -6
- data/test/unit/mws/test_products_client.rb +13 -28
- data/test/unit/mws/test_recommendations_client.rb +1 -2
- data/test/unit/mws/test_reports_client.rb +1 -1
- data/test/unit/mws/test_subscriptions_client.rb +1 -130
- data/test/unit/peddler/errors/test_builder.rb +54 -7
- data/test/unit/peddler/errors/test_class_generator.rb +18 -0
- data/test/unit/peddler/errors/test_error.rb +7 -2
- data/test/unit/peddler/test_client.rb +136 -190
- data/test/unit/peddler/test_flat_file_parser.rb +2 -2
- data/test/unit/peddler/test_headers.rb +19 -9
- data/test/unit/peddler/test_marketplace.rb +18 -5
- data/test/unit/peddler/test_vcr_matcher.rb +3 -1
- data/test/vcr_cassettes/Feeds.yml +4816 -5224
- data/test/vcr_cassettes/Reports.yml +3278 -2604
- metadata +8 -9
- data/lib/peddler/errors.rb +0 -12
- data/lib/peddler/errors/handler.rb +0 -59
- data/test/unit/peddler/errors/test_handler.rb +0 -62
- data/test/unit/peddler/test_errors.rb +0 -26
@@ -11,12 +11,12 @@ module MWS
|
|
11
11
|
# selling your inventory on Amazon's retail web site or through other retail
|
12
12
|
# channels.
|
13
13
|
class Client < ::Peddler::Client
|
14
|
-
version '2010-10-01'
|
15
|
-
path "/FulfillmentInventory/#{version}"
|
14
|
+
self.version = '2010-10-01'
|
15
|
+
self.path = "/FulfillmentInventory/#{version}"
|
16
16
|
|
17
17
|
# Returns information about the availability of a seller's inventory
|
18
18
|
#
|
19
|
-
# @see
|
19
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_inventory/FBAInventory_ListInventorySupply.html
|
20
20
|
# @param [Hash] opts
|
21
21
|
# @option opts [Array<String>, String] :seller_skus
|
22
22
|
# @option opts [String, #iso8601] :query_start_date_time
|
@@ -34,7 +34,7 @@ module MWS
|
|
34
34
|
# Returns the next page of information about the availability of a
|
35
35
|
# seller's inventory
|
36
36
|
#
|
37
|
-
# @see
|
37
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_inventory/FBAInventory_ListInventorySupplyByNextToken.html
|
38
38
|
# @param [String] next_token
|
39
39
|
# @return [Peddler::XMLParser]
|
40
40
|
def list_inventory_supply_by_next_token(next_token)
|
@@ -46,7 +46,7 @@ module MWS
|
|
46
46
|
|
47
47
|
# Gets the operational status of the API
|
48
48
|
#
|
49
|
-
# @see
|
49
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_inventory/MWS_GetServiceStatus.html
|
50
50
|
# @return [Peddler::XMLParser]
|
51
51
|
def get_service_status
|
52
52
|
operation('GetServiceStatus')
|
@@ -15,12 +15,12 @@ module MWS
|
|
15
15
|
# on when they were fulfilled and by the fulfillment method associated with
|
16
16
|
# them.
|
17
17
|
class Client < ::Peddler::Client
|
18
|
-
version '2010-10-01'
|
19
|
-
path "/FulfillmentOutboundShipment/#{version}"
|
18
|
+
self.version = '2010-10-01'
|
19
|
+
self.path = "/FulfillmentOutboundShipment/#{version}"
|
20
20
|
|
21
21
|
# Lists fulfillment order previews
|
22
22
|
#
|
23
|
-
# @see
|
23
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_GetFulfillmentPreview.html
|
24
24
|
# @param [Struct, Hash] address
|
25
25
|
# @param [Array<Struct, Hash>] items
|
26
26
|
# @param [Hash] opts
|
@@ -28,13 +28,15 @@ module MWS
|
|
28
28
|
# @option opts [Boolean] :include_cod_fulfillment_preview
|
29
29
|
# @return [Peddler::XMLParser]
|
30
30
|
def get_fulfillment_preview(address, items, opts = {})
|
31
|
+
opts = opts.dup
|
31
32
|
if opts.key?(:include_cod_fulfillment_preview)
|
32
33
|
opts['IncludeCODFulfillmentPreview'] =
|
33
34
|
opts.delete(:include_cod_fulfillment_preview)
|
34
35
|
end
|
35
36
|
|
36
37
|
operation('GetFulfillmentPreview')
|
37
|
-
.add(opts
|
38
|
+
.add(opts)
|
39
|
+
.add('Address' => address, 'Items' => items)
|
38
40
|
.structure!('Items', 'member')
|
39
41
|
.structure!('ShippingSpeedCategories')
|
40
42
|
|
@@ -44,7 +46,7 @@ module MWS
|
|
44
46
|
# Requests that Amazon ship items from the seller's Amazon Fulfillment
|
45
47
|
# Network inventory to a destination address
|
46
48
|
#
|
47
|
-
# @see
|
49
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_CreateFulfillmentOrder.html
|
48
50
|
# @param [String] seller_fulfillment_order_id
|
49
51
|
# @param [String] displayable_order_id
|
50
52
|
# @param [String, #iso8601] displayable_order_date_time
|
@@ -64,22 +66,20 @@ module MWS
|
|
64
66
|
displayable_order_comment,
|
65
67
|
shipping_speed_category,
|
66
68
|
destination_address, items, opts = {})
|
69
|
+
opts = opts.dup
|
67
70
|
if opts.key?(:cod_settings)
|
68
71
|
opts['CODSettings'] = opts.delete(:cod_settings)
|
69
72
|
end
|
70
73
|
|
71
74
|
operation('CreateFulfillmentOrder')
|
72
|
-
.add(
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
'Items' => items
|
81
|
-
)
|
82
|
-
)
|
75
|
+
.add(opts)
|
76
|
+
.add('SellerFulfillmentOrderId' => seller_fulfillment_order_id,
|
77
|
+
'DisplayableOrderId' => displayable_order_id,
|
78
|
+
'DisplayableOrderDateTime' => displayable_order_date_time,
|
79
|
+
'DisplayableOrderComment' => displayable_order_comment,
|
80
|
+
'ShippingSpeedCategory' => shipping_speed_category,
|
81
|
+
'DestinationAddress' => destination_address,
|
82
|
+
'Items' => items)
|
83
83
|
.structure!('Items', 'member')
|
84
84
|
.structure!('NotificationEmailList', 'member')
|
85
85
|
|
@@ -89,7 +89,7 @@ module MWS
|
|
89
89
|
# Updates and/or requests shipment for a fulfillment order with an order
|
90
90
|
# hold on it
|
91
91
|
#
|
92
|
-
# @see
|
92
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_UpdateFulfillmentOrder.html
|
93
93
|
# @param [String] seller_fulfillment_order_id
|
94
94
|
# @param [Hash] opts
|
95
95
|
# @option opts [String] :fulfillment_action
|
@@ -104,11 +104,8 @@ module MWS
|
|
104
104
|
# @return [Peddler::XMLParser]
|
105
105
|
def update_fulfillment_order(seller_fulfillment_order_id, opts = {})
|
106
106
|
operation('UpdateFulfillmentOrder')
|
107
|
-
.add(
|
108
|
-
|
109
|
-
'SellerFulfillmentOrderId' => seller_fulfillment_order_id
|
110
|
-
)
|
111
|
-
)
|
107
|
+
.add(opts)
|
108
|
+
.add('SellerFulfillmentOrderId' => seller_fulfillment_order_id)
|
112
109
|
.structure!('NotificationEmailList', 'member')
|
113
110
|
.structure!('Items', 'member')
|
114
111
|
|
@@ -117,7 +114,7 @@ module MWS
|
|
117
114
|
|
118
115
|
# Gets a fulfillment order
|
119
116
|
#
|
120
|
-
# @see
|
117
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_GetFulfillmentOrder.html
|
121
118
|
# @param [String] seller_fulfillment_order_id
|
122
119
|
# @return [Peddler::XMLParser]
|
123
120
|
def get_fulfillment_order(seller_fulfillment_order_id)
|
@@ -129,22 +126,20 @@ module MWS
|
|
129
126
|
|
130
127
|
# Returns a list of fulfillment orders fulfilled on or after a date
|
131
128
|
#
|
132
|
-
# @see
|
133
|
-
# @param [
|
129
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_ListAllFulfillmentOrders.html
|
130
|
+
# @param [Hash] opts
|
131
|
+
# @option opts [String, #iso8601] :query_start_date_time
|
134
132
|
# @return [Peddler::XMLParser]
|
135
|
-
def list_all_fulfillment_orders(
|
136
|
-
|
137
|
-
|
138
|
-
opts.update('QueryStartDateTime' => query_start_date_time)
|
139
|
-
end
|
140
|
-
operation('ListAllFulfillmentOrders').add(opts)
|
133
|
+
def list_all_fulfillment_orders(opts = {})
|
134
|
+
operation('ListAllFulfillmentOrders')
|
135
|
+
.add(opts)
|
141
136
|
|
142
137
|
run
|
143
138
|
end
|
144
139
|
|
145
140
|
# Returns the next page of fulfillment orders
|
146
141
|
#
|
147
|
-
# @see
|
142
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_ListAllFulfillmentOrdersByNextToken.html
|
148
143
|
# @param [String] next_token
|
149
144
|
# @return [Peddler::XMLParser]
|
150
145
|
def list_all_fulfillment_orders_by_next_token(next_token)
|
@@ -157,7 +152,7 @@ module MWS
|
|
157
152
|
# Returns delivery tracking information for a package in an outbound
|
158
153
|
# shipment for a Multi-Channel Fulfillment order
|
159
154
|
#
|
160
|
-
# @see
|
155
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_GetPackageTrackingDetails.html
|
161
156
|
# @param [String] package_number
|
162
157
|
# @return [Peddler::XMLParser]
|
163
158
|
def get_package_tracking_details(package_number)
|
@@ -170,7 +165,7 @@ module MWS
|
|
170
165
|
# Requests that Amazon stop attempting to fulfill an existing fulfillment
|
171
166
|
# order
|
172
167
|
#
|
173
|
-
# @see
|
168
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_CancelFulfillmentOrder.html
|
174
169
|
# @param [String] seller_fulfillment_order_id
|
175
170
|
# @return [Peddler::XMLParser]
|
176
171
|
def cancel_fulfillment_order(seller_fulfillment_order_id)
|
@@ -183,7 +178,7 @@ module MWS
|
|
183
178
|
# Returns a list of return reason codes for a seller SKU in a given
|
184
179
|
# marketplace.
|
185
180
|
#
|
186
|
-
# @see
|
181
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_ListReturnReasonCodes.html
|
187
182
|
# @param [String] seller_sku
|
188
183
|
# @param [Hash] opts
|
189
184
|
# @option opts [String] :marketplace_id
|
@@ -192,11 +187,8 @@ module MWS
|
|
192
187
|
# @return [Peddler::XMLParser]
|
193
188
|
def list_return_reason_codes(seller_sku, opts = {})
|
194
189
|
operation('ListReturnReasonCodes')
|
195
|
-
.add(
|
196
|
-
|
197
|
-
'SellerSKU' => seller_sku
|
198
|
-
)
|
199
|
-
)
|
190
|
+
.add(opts)
|
191
|
+
.add('SellerSKU' => seller_sku)
|
200
192
|
.structure!('List', 'member')
|
201
193
|
|
202
194
|
run
|
@@ -204,14 +196,14 @@ module MWS
|
|
204
196
|
|
205
197
|
# Creates a fulfillment return.
|
206
198
|
#
|
207
|
-
# @see
|
199
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/FBAOutbound_CreateFulfillmentReturn.html
|
208
200
|
# @param [String] seller_fulfillment_order_id
|
209
201
|
# @param [Array] items
|
210
202
|
# @return [Peddler::XMLParser]
|
211
203
|
def create_fulfillment_return(seller_fulfillment_order_id, items)
|
212
204
|
operation('CreateFulfillmentReturn')
|
213
|
-
.add('SellerFulfillmentOrderId' => seller_fulfillment_order_id
|
214
|
-
|
205
|
+
.add('SellerFulfillmentOrderId' => seller_fulfillment_order_id,
|
206
|
+
'Items' => items)
|
215
207
|
.structure!('Items', 'member')
|
216
208
|
|
217
209
|
run
|
@@ -219,7 +211,7 @@ module MWS
|
|
219
211
|
|
220
212
|
# Gets the operational status of the API
|
221
213
|
#
|
222
|
-
# @see
|
214
|
+
# @see https://docs.developer.amazonservices.com/en_US/fba_outbound/MWS_GetServiceStatus.html
|
223
215
|
# @return [Peddler::XMLParser]
|
224
216
|
def get_service_status
|
225
217
|
operation('GetServiceStatus')
|
@@ -12,13 +12,13 @@ module MWS
|
|
12
12
|
# requirements. Sellers can choose from the shipping service offers returned
|
13
13
|
# by Amazon, and then purchase shipping labels for fulfilling their orders.
|
14
14
|
class Client < ::Peddler::Client
|
15
|
-
version '2015-06-01'
|
16
|
-
path "/MerchantFulfillment/#{version}"
|
15
|
+
self.version = '2015-06-01'
|
16
|
+
self.path = "/MerchantFulfillment/#{version}"
|
17
17
|
|
18
18
|
# Returns a list of shipping service offers that satisfy the shipment
|
19
19
|
# request details that you specify
|
20
20
|
#
|
21
|
-
# @see
|
21
|
+
# @see https://docs.developer.amazonservices.com/en_US/merch_fulfill/MerchFulfill_GetEligibleShippingServices.html
|
22
22
|
# @param [Struct, Hash] shipment_request_details
|
23
23
|
# @return [Peddler::XMLParser]
|
24
24
|
def get_eligible_shipping_services(shipment_request_details)
|
@@ -32,7 +32,7 @@ module MWS
|
|
32
32
|
# Purchases shipping and returns PNG or PDF document data for a shipping
|
33
33
|
# label
|
34
34
|
#
|
35
|
-
# @see
|
35
|
+
# @see https://docs.developer.amazonservices.com/en_US/merch_fulfill/MerchFulfill_CreateShipment.html
|
36
36
|
# @param [Struct, Hash] shipment_request_details
|
37
37
|
# @param [String] shipping_service_id
|
38
38
|
# @param [Hash] opts
|
@@ -41,11 +41,9 @@ module MWS
|
|
41
41
|
def create_shipment(shipment_request_details, shipping_service_id,
|
42
42
|
opts = {})
|
43
43
|
operation('CreateShipment')
|
44
|
-
.add(
|
45
|
-
'ShipmentRequestDetails' => shipment_request_details,
|
46
|
-
'ShippingServiceId' => shipping_service_id
|
47
|
-
)
|
48
44
|
.add(opts)
|
45
|
+
.add('ShipmentRequestDetails' => shipment_request_details,
|
46
|
+
'ShippingServiceId' => shipping_service_id)
|
49
47
|
.structure!('ItemList', 'Item')
|
50
48
|
|
51
49
|
run
|
@@ -53,14 +51,12 @@ module MWS
|
|
53
51
|
|
54
52
|
# Returns an existing shipment for the ShipmentId value that you specify
|
55
53
|
#
|
56
|
-
# @see
|
54
|
+
# @see https://docs.developer.amazonservices.com/en_US/merch_fulfill/MerchFulfill_GetShipment.html
|
57
55
|
# @param [String] shipment_id
|
58
56
|
# @return [Peddler::XMLParser]
|
59
57
|
def get_shipment(shipment_id)
|
60
58
|
operation('GetShipment')
|
61
|
-
.add(
|
62
|
-
'ShipmentId' => shipment_id
|
63
|
-
)
|
59
|
+
.add('ShipmentId' => shipment_id)
|
64
60
|
|
65
61
|
run
|
66
62
|
end
|
@@ -68,21 +64,19 @@ module MWS
|
|
68
64
|
# Cancels an existing shipment and requests a refund for the ShipmentId
|
69
65
|
# value that you specify
|
70
66
|
#
|
71
|
-
# @see
|
67
|
+
# @see https://docs.developer.amazonservices.com/en_US/merch_fulfill/MerchFulfill_CancelShipment.html
|
72
68
|
# @param [String] shipment_id
|
73
69
|
# @return [Peddler::XMLParser]
|
74
70
|
def cancel_shipment(shipment_id)
|
75
71
|
operation('CancelShipment')
|
76
|
-
.add(
|
77
|
-
'ShipmentId' => shipment_id
|
78
|
-
)
|
72
|
+
.add('ShipmentId' => shipment_id)
|
79
73
|
|
80
74
|
run
|
81
75
|
end
|
82
76
|
|
83
77
|
# Gets the operational status of the API
|
84
78
|
#
|
85
|
-
# @see
|
79
|
+
# @see https://docs.developer.amazonservices.com/en_US/merch_fulfill/MWS_GetServiceStatus.html
|
86
80
|
# @return [Peddler::XMLParser]
|
87
81
|
def get_service_status
|
88
82
|
operation('GetServiceStatus')
|
@@ -16,8 +16,8 @@ module MWS
|
|
16
16
|
# Payments. You cannot use this API section to process payments for Amazon
|
17
17
|
# Marketplace, Amazon Webstore, or Checkout by Amazon.
|
18
18
|
class Client < ::Peddler::Client
|
19
|
-
version '2013-01-01'
|
20
|
-
path "/OffAmazonPayments/#{version}/"
|
19
|
+
self.version = '2013-01-01'
|
20
|
+
self.path = "/OffAmazonPayments/#{version}/"
|
21
21
|
|
22
22
|
# Switches the client to the sandbox environment
|
23
23
|
#
|
@@ -44,11 +44,10 @@ module MWS
|
|
44
44
|
def authorize(amazon_order_reference_id, authorization_reference_id,
|
45
45
|
authorization_amount, opts = {})
|
46
46
|
operation('Authorize')
|
47
|
-
.add(opts
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
))
|
47
|
+
.add(opts)
|
48
|
+
.add('AmazonOrderReferenceId' => amazon_order_reference_id,
|
49
|
+
'AuthorizationReferenceId' => authorization_reference_id,
|
50
|
+
'AuthorizationAmount' => authorization_amount)
|
52
51
|
|
53
52
|
run
|
54
53
|
end
|
@@ -62,11 +61,8 @@ module MWS
|
|
62
61
|
# @return [Peddler::XMLParser]
|
63
62
|
def cancel_order_reference(amazon_order_reference_id, opts = {})
|
64
63
|
operation('CancelOrderReference')
|
65
|
-
.add(
|
66
|
-
|
67
|
-
'AmazonOrderReferenceId' => amazon_order_reference_id
|
68
|
-
)
|
69
|
-
)
|
64
|
+
.add(opts)
|
65
|
+
.add('AmazonOrderReferenceId' => amazon_order_reference_id)
|
70
66
|
|
71
67
|
run
|
72
68
|
end
|
@@ -84,11 +80,10 @@ module MWS
|
|
84
80
|
def capture(amazon_authorization_id, capture_reference_id, capture_amount,
|
85
81
|
opts = {})
|
86
82
|
operation('Capture')
|
87
|
-
.add(opts
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
))
|
83
|
+
.add(opts)
|
84
|
+
.add('AmazonAuthorizationId' => amazon_authorization_id,
|
85
|
+
'CaptureReferenceId' => capture_reference_id,
|
86
|
+
'CaptureAmount' => capture_amount)
|
92
87
|
|
93
88
|
run
|
94
89
|
end
|
@@ -102,7 +97,8 @@ module MWS
|
|
102
97
|
# @return [Peddler::XMLParser]
|
103
98
|
def close_authorization(amazon_authorization_id, opts = {})
|
104
99
|
operation('CloseAuthorization')
|
105
|
-
.add(opts
|
100
|
+
.add(opts)
|
101
|
+
.add('AmazonAuthorizationId' => amazon_authorization_id)
|
106
102
|
|
107
103
|
run
|
108
104
|
end
|
@@ -118,11 +114,8 @@ module MWS
|
|
118
114
|
# @return [Peddler::XMLParser]
|
119
115
|
def close_order_reference(amazon_order_reference_id, opts = {})
|
120
116
|
operation('CloseOrderReference')
|
121
|
-
.add(
|
122
|
-
|
123
|
-
'AmazonOrderReferenceId' => amazon_order_reference_id
|
124
|
-
)
|
125
|
-
)
|
117
|
+
.add(opts)
|
118
|
+
.add('AmazonOrderReferenceId' => amazon_order_reference_id)
|
126
119
|
|
127
120
|
run
|
128
121
|
end
|
@@ -152,10 +145,8 @@ module MWS
|
|
152
145
|
# @return [Peddler::XMLParser]
|
153
146
|
def create_order_reference_for_id(id, id_type, opts = {})
|
154
147
|
operation('CreateOrderReferenceForId')
|
155
|
-
.add(opts
|
156
|
-
|
157
|
-
'IdType' => id_type
|
158
|
-
))
|
148
|
+
.add(opts)
|
149
|
+
.add('Id' => id, 'IdType' => id_type)
|
159
150
|
|
160
151
|
run
|
161
152
|
end
|
@@ -195,11 +186,8 @@ module MWS
|
|
195
186
|
# @return [Peddler::XMLParser]
|
196
187
|
def get_order_reference_details(amazon_order_reference_id, opts = {})
|
197
188
|
operation('GetOrderReferenceDetails')
|
198
|
-
.add(
|
199
|
-
|
200
|
-
'AmazonOrderReferenceId' => amazon_order_reference_id
|
201
|
-
)
|
202
|
-
)
|
189
|
+
.add(opts)
|
190
|
+
.add('AmazonOrderReferenceId' => amazon_order_reference_id)
|
203
191
|
|
204
192
|
run
|
205
193
|
end
|
@@ -238,11 +226,10 @@ module MWS
|
|
238
226
|
def refund(amazon_capture_id, refund_reference_id, refund_amount,
|
239
227
|
opts = {})
|
240
228
|
operation('Refund')
|
241
|
-
.add(opts
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
))
|
229
|
+
.add(opts)
|
230
|
+
.add('AmazonCaptureId' => amazon_capture_id,
|
231
|
+
'RefundReferenceId' => refund_reference_id,
|
232
|
+
'RefundAmount' => refund_amount)
|
246
233
|
|
247
234
|
run
|
248
235
|
end
|
@@ -262,10 +249,8 @@ module MWS
|
|
262
249
|
opts = {})
|
263
250
|
order_reference_attributes = opts.update('OrderTotal' => order_total)
|
264
251
|
operation('SetOrderReferenceDetails')
|
265
|
-
.add(
|
266
|
-
|
267
|
-
'OrderReferenceAttributes' => order_reference_attributes
|
268
|
-
)
|
252
|
+
.add('AmazonOrderReferenceId' => amazon_order_reference_id,
|
253
|
+
'OrderReferenceAttributes' => order_reference_attributes)
|
269
254
|
|
270
255
|
run
|
271
256
|
end
|
@@ -291,13 +276,10 @@ module MWS
|
|
291
276
|
authorization_reference_id,
|
292
277
|
authorization_amount, opts = {})
|
293
278
|
operation('AuthorizeOnBillingAgreement')
|
294
|
-
.add(
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
'AuthorizationAmount' => authorization_amount
|
299
|
-
)
|
300
|
-
)
|
279
|
+
.add(opts)
|
280
|
+
.add('AmazonBillingAgreementId' => amazon_billing_agreement_id,
|
281
|
+
'AuthorizationReferenceId' => authorization_reference_id,
|
282
|
+
'AuthorizationAmount' => authorization_amount)
|
301
283
|
|
302
284
|
run
|
303
285
|
end
|
@@ -313,11 +295,8 @@ module MWS
|
|
313
295
|
# @return [Peddler::XMLParser]
|
314
296
|
def close_billing_agreement(amazon_billing_agreement_id, opts = {})
|
315
297
|
operation('CloseBillingAgreement')
|
316
|
-
.add(
|
317
|
-
|
318
|
-
'AmazonBillingAgreementId' => amazon_billing_agreement_id
|
319
|
-
)
|
320
|
-
)
|
298
|
+
.add(opts)
|
299
|
+
.add('AmazonBillingAgreementId' => amazon_billing_agreement_id)
|
321
300
|
|
322
301
|
run
|
323
302
|
end
|
@@ -330,9 +309,7 @@ module MWS
|
|
330
309
|
# @return [Peddler::XMLParser]
|
331
310
|
def confirm_billing_agreement(amazon_billing_agreement_id)
|
332
311
|
operation('ConfirmBillingAgreement')
|
333
|
-
.add(
|
334
|
-
'AmazonBillingAgreementId' => amazon_billing_agreement_id
|
335
|
-
)
|
312
|
+
.add('AmazonBillingAgreementId' => amazon_billing_agreement_id)
|
336
313
|
|
337
314
|
run
|
338
315
|
end
|
@@ -346,11 +323,8 @@ module MWS
|
|
346
323
|
# @return [Peddler::XMLParser]
|
347
324
|
def get_billing_agreement_details(amazon_billing_agreement_id, opts = {})
|
348
325
|
operation('GetBillingAgreementDetails')
|
349
|
-
.add(
|
350
|
-
|
351
|
-
'AmazonBillingAgreementId' => amazon_billing_agreement_id
|
352
|
-
)
|
353
|
-
)
|
326
|
+
.add(opts)
|
327
|
+
.add('AmazonBillingAgreementId' => amazon_billing_agreement_id)
|
354
328
|
|
355
329
|
run
|
356
330
|
end
|
@@ -365,10 +339,8 @@ module MWS
|
|
365
339
|
def set_billing_agreement_details(amazon_billing_agreement_id,
|
366
340
|
billing_agreement_attributes)
|
367
341
|
operation('SetBillingAgreementDetails')
|
368
|
-
.add(
|
369
|
-
|
370
|
-
'BillingAgreementAttributes' => billing_agreement_attributes
|
371
|
-
)
|
342
|
+
.add('AmazonBillingAgreementId' => amazon_billing_agreement_id,
|
343
|
+
'BillingAgreementAttributes' => billing_agreement_attributes)
|
372
344
|
|
373
345
|
run
|
374
346
|
end
|
@@ -381,9 +353,7 @@ module MWS
|
|
381
353
|
# @return [Peddler::XMLParser]
|
382
354
|
def validate_billing_agreement(amazon_billing_agreement_id)
|
383
355
|
operation('ValidateBillingAgreement')
|
384
|
-
.add(
|
385
|
-
'AmazonBillingAgreementId' => amazon_billing_agreement_id
|
386
|
-
)
|
356
|
+
.add('AmazonBillingAgreementId' => amazon_billing_agreement_id)
|
387
357
|
|
388
358
|
run
|
389
359
|
end
|