ingram_micro 0.1.1

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.
Files changed (56) hide show
  1. checksums.yaml +7 -0
  2. data/.DS_Store +0 -0
  3. data/.gitignore +11 -0
  4. data/.rspec +2 -0
  5. data/.travis.yml +4 -0
  6. data/CODE_OF_CONDUCT.md +13 -0
  7. data/Gemfile +4 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +123 -0
  10. data/Rakefile +6 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +7 -0
  13. data/example.rb +18 -0
  14. data/ingram_micro.gemspec +38 -0
  15. data/lib/.DS_Store +0 -0
  16. data/lib/ingram_micro.rb +42 -0
  17. data/lib/ingram_micro/.DS_Store +0 -0
  18. data/lib/ingram_micro/base_element.rb +32 -0
  19. data/lib/ingram_micro/client.rb +49 -0
  20. data/lib/ingram_micro/configuration.rb +46 -0
  21. data/lib/ingram_micro/elements/credit_card_information.rb +26 -0
  22. data/lib/ingram_micro/elements/customer.rb +23 -0
  23. data/lib/ingram_micro/elements/detail.rb +19 -0
  24. data/lib/ingram_micro/elements/message_header_no_pw.rb +21 -0
  25. data/lib/ingram_micro/elements/message_header_pw.rb +22 -0
  26. data/lib/ingram_micro/elements/purchase_order_information.rb +15 -0
  27. data/lib/ingram_micro/elements/return_authorization_line_item.rb +39 -0
  28. data/lib/ingram_micro/elements/return_authorization_submission.rb +67 -0
  29. data/lib/ingram_micro/elements/return_order_header.rb +29 -0
  30. data/lib/ingram_micro/elements/sales_order_header.rb +27 -0
  31. data/lib/ingram_micro/elements/sales_order_line_item.rb +37 -0
  32. data/lib/ingram_micro/elements/sales_order_submission.rb +62 -0
  33. data/lib/ingram_micro/elements/shipment_information.rb +69 -0
  34. data/lib/ingram_micro/elements/shipment_status.rb +44 -0
  35. data/lib/ingram_micro/elements/shipment_status_line_item.rb +28 -0
  36. data/lib/ingram_micro/errors/invalid_type.rb +2 -0
  37. data/lib/ingram_micro/errors/missing_field.rb +2 -0
  38. data/lib/ingram_micro/request_processor.rb +11 -0
  39. data/lib/ingram_micro/transmission.rb +50 -0
  40. data/lib/ingram_micro/transmissions/check_shipment_status.rb +45 -0
  41. data/lib/ingram_micro/transmissions/return_authorization.rb +50 -0
  42. data/lib/ingram_micro/transmissions/sales_order.rb +55 -0
  43. data/lib/ingram_micro/version.rb +3 -0
  44. data/xsd/.DS_Store +0 -0
  45. data/xsd/BPXML_InventoryStatus.xsd +49 -0
  46. data/xsd/inbound/BPXML-LoadReject.xsd +686 -0
  47. data/xsd/inbound/BPXML-LoadSuccess.xsd +696 -0
  48. data/xsd/inbound/BPXML-ReturnReceipt.xsd +664 -0
  49. data/xsd/inbound/BPXML-ShipAdvice.xsd +758 -0
  50. data/xsd/inbound/BPXML-StandardResponse.xsd +122 -0
  51. data/xsd/outbound/BPXML-ReturnAuthorization.xsd +641 -0
  52. data/xsd/outbound/BPXML-SalesOrder.xsd +753 -0
  53. data/xsd/outbound/BPXML-ShipmentStatus.xsd +232 -0
  54. data/xsd/xml_samples/.DS_Store +0 -0
  55. data/xsd/xml_samples/Sales_order_sample.xml +143 -0
  56. metadata +227 -0
@@ -0,0 +1,664 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
3
+ <xs:annotation>
4
+ <xs:documentation xml:lang="en"> This schema captures the requirement details for the Outbound Return Receipt of Goods process sent by Brightpoint. The XML document sent to
5
+ Brightpoint will be based on this schema and information available will be based on the elements specified in this transaction. </xs:documentation>
6
+ </xs:annotation>
7
+ <xs:element name="message">
8
+ <xs:annotation>
9
+ <xs:documentation xml:lang="en"> This is the root document element used to encapsulate the entire message. </xs:documentation>
10
+ </xs:annotation>
11
+ <xs:complexType>
12
+ <xs:sequence>
13
+ <xs:element ref="message-header" minOccurs="1" maxOccurs="1"/>
14
+ <xs:element ref="return-receipt" minOccurs="1" maxOccurs="unbounded"/>
15
+ </xs:sequence>
16
+ </xs:complexType>
17
+ </xs:element>
18
+ <xs:element name="message-header">
19
+ <xs:complexType>
20
+ <xs:sequence>
21
+ <xs:element ref="message-id" minOccurs="1" maxOccurs="1"/>
22
+ <xs:element ref="transaction-name" minOccurs="1" maxOccurs="1"/>
23
+ <xs:element ref="partner-name" minOccurs="1" maxOccurs="1"/>
24
+ <xs:element ref="source-url" minOccurs="1" maxOccurs="1"/>
25
+ <xs:element ref="create-timestamp" minOccurs="1" maxOccurs="1"/>
26
+ <xs:element ref="response-request" minOccurs="1" maxOccurs="1"/>
27
+ </xs:sequence>
28
+ </xs:complexType>
29
+ </xs:element>
30
+ <xs:element name="message-id" type="xs:integer">
31
+ <xs:annotation>
32
+ <xs:documentation xml:lang="en">Unique message identification ID</xs:documentation>
33
+ </xs:annotation>
34
+ </xs:element>
35
+ <xs:element name="transaction-name" type="xs:string" default="return-receipt">
36
+ <xs:annotation>
37
+ <xs:documentation xml:lang="en">The name of the inbound message transaction. In the case of this transaction it is return-receipt.</xs:documentation>
38
+ </xs:annotation>
39
+ </xs:element>
40
+ <xs:element name="partner-name" type="xs:string">
41
+ <xs:annotation>
42
+ <xs:documentation xml:lang="en">Short name of partner be used to identify mappings of data.</xs:documentation>
43
+ </xs:annotation>
44
+ </xs:element>
45
+ <xs:element name="source-url" type="xs:anyURI">
46
+ <xs:annotation>
47
+ <xs:documentation xml:lang="en">Unique Resource Locator that posts the XML Document.</xs:documentation>
48
+ </xs:annotation>
49
+ </xs:element>
50
+ <xs:element name="create-timestamp" type="xs:string">
51
+ <xs:annotation>
52
+ <xs:documentation xml:lang="en">Date and Time at which XML Document was generated from source system. In CCYYMMDDHHMISS.</xs:documentation>
53
+ </xs:annotation>
54
+ </xs:element>
55
+ <xs:element name="response-request" final="#all">
56
+ <xs:annotation>
57
+ <xs:documentation xml:lang="en">Flag to determine if the receiving party is required to send a response back or not. 0: Response Not Required; 1: Response Required</xs:documentation>
58
+ </xs:annotation>
59
+ <xs:simpleType>
60
+ <xs:restriction base="xs:integer">
61
+ <xs:enumeration value="0"/>
62
+ <xs:enumeration value="1"/>
63
+ </xs:restriction>
64
+ </xs:simpleType>
65
+ </xs:element>
66
+ <xs:element name="return-receipt">
67
+ <xs:annotation>
68
+ <xs:documentation xml:lang="en">The base contents of this message are contained in the element.</xs:documentation>
69
+ </xs:annotation>
70
+ <xs:complexType>
71
+ <xs:sequence>
72
+ <xs:element ref="header" minOccurs="1" maxOccurs="1"/>
73
+ <xs:element ref="detail" minOccurs="1" maxOccurs="1"/>
74
+ </xs:sequence>
75
+ </xs:complexType>
76
+ </xs:element>
77
+ <xs:element name="header">
78
+ <xs:annotation>
79
+ <xs:documentation xml:lang="en">Header content of the return receipt of goods.</xs:documentation>
80
+ </xs:annotation>
81
+ <xs:complexType>
82
+ <xs:sequence>
83
+ <xs:element ref="customer-id" minOccurs="1" maxOccurs="1"/>
84
+ <xs:element ref="business-name" minOccurs="0" maxOccurs="1"/>
85
+ <xs:element ref="carrier-name" minOccurs="0" maxOccurs="1"/>
86
+ <xs:element ref="customer-information" minOccurs="0" maxOccurs="1"/>
87
+ <xs:element ref="shipment-information" minOccurs="1" maxOccurs="1"/>
88
+ <xs:element ref="purchase-order-information" minOccurs="0" maxOccurs="1"/>
89
+ <xs:element ref="credit-card-information" minOccurs="0" maxOccurs="1"/>
90
+ <xs:element ref="order-header" minOccurs="1" maxOccurs="1"/>
91
+ </xs:sequence>
92
+ </xs:complexType>
93
+ </xs:element>
94
+ <xs:element name="customer-id" type="xs:string">
95
+ <xs:annotation>
96
+ <xs:documentation xml:lang="en">Customer Identification number in the Brightpoint's system. This is the value used to identify the customer in the Customer Master table in JD Edwards.</xs:documentation>
97
+ </xs:annotation>
98
+ </xs:element>
99
+ <xs:element name="business-name" type="xs:string">
100
+ <xs:annotation>
101
+ <xs:documentation xml:lang="en">The official name of your business.</xs:documentation>
102
+ </xs:annotation>
103
+ </xs:element>
104
+ <xs:element name="carrier-name" type="xs:string">
105
+ <xs:annotation>
106
+ <xs:documentation xml:lang="en">If you are a third party doing business on behalf of a carrier then you would provide the official name of the carrier here.</xs:documentation>
107
+ </xs:annotation>
108
+ </xs:element>
109
+ <xs:element name="customer-information">
110
+ <xs:annotation>
111
+ <xs:documentation xml:lang="en">Main Element which contains all customer related information.</xs:documentation>
112
+ </xs:annotation>
113
+ <xs:complexType>
114
+ <xs:sequence>
115
+ <xs:element ref="customer-first-name" minOccurs="1" maxOccurs="1"/>
116
+ <xs:element ref="customer-last-name" minOccurs="1" maxOccurs="1"/>
117
+ <xs:element ref="customer-middle-initial" minOccurs="0" maxOccurs="1"/>
118
+ <xs:element ref="customer-address1" minOccurs="1" maxOccurs="1"/>
119
+ <xs:element ref="customer-address2" minOccurs="0" maxOccurs="1"/>
120
+ <xs:element ref="customer-address3" minOccurs="0" maxOccurs="1"/>
121
+ <xs:element ref="customer-city" minOccurs="1" maxOccurs="1"/>
122
+ <xs:element ref="customer-state" minOccurs="1" maxOccurs="1"/>
123
+ <xs:element ref="customer-post-code" minOccurs="1" maxOccurs="1"/>
124
+ <xs:element ref="customer-country-code" minOccurs="1" maxOccurs="1"/>
125
+ <xs:element ref="customer-phone1" minOccurs="1" maxOccurs="1"/>
126
+ <xs:element ref="customer-phone2" minOccurs="0" maxOccurs="1"/>
127
+ <xs:element ref="customer-fax" minOccurs="0" maxOccurs="1"/>
128
+ <xs:element ref="customer-email" minOccurs="0" maxOccurs="1"/>
129
+ </xs:sequence>
130
+ </xs:complexType>
131
+ </xs:element>
132
+ <xs:element name="customer-first-name" type="xs:string"/>
133
+ <xs:element name="customer-last-name" type="xs:string"/>
134
+ <xs:element name="customer-middle-initial" type="xs:string"/>
135
+ <xs:element name="customer-address1" type="xs:string"/>
136
+ <xs:element name="customer-address2" type="xs:string"/>
137
+ <xs:element name="customer-address3" type="xs:string"/>
138
+ <xs:element name="customer-city" type="xs:string"/>
139
+ <xs:element name="customer-state" type="xs:string"/>
140
+ <xs:element name="customer-post-code" type="xs:string"/>
141
+ <xs:element name="customer-country-code" type="xs:string"/>
142
+ <xs:element name="customer-phone1" type="xs:string"/>
143
+ <xs:element name="customer-phone2" type="xs:string"/>
144
+ <xs:element name="customer-fax" type="xs:string"/>
145
+ <xs:element name="customer-email" type="xs:string"/>
146
+ <xs:element name="shipment-information">
147
+ <xs:complexType>
148
+ <xs:sequence>
149
+ <xs:element ref="ship-first-name" minOccurs="1" maxOccurs="1"/>
150
+ <xs:element ref="ship-last-name" minOccurs="1" maxOccurs="1"/>
151
+ <xs:element ref="ship-middle-initial" minOccurs="0" maxOccurs="1"/>
152
+ <xs:element ref="ship-address1" minOccurs="1" maxOccurs="1"/>
153
+ <xs:element ref="ship-address2" minOccurs="0" maxOccurs="1"/>
154
+ <xs:element ref="ship-address3" minOccurs="0" maxOccurs="1"/>
155
+ <xs:element ref="ship-city" minOccurs="1" maxOccurs="1"/>
156
+ <xs:element ref="ship-state" minOccurs="1" maxOccurs="1"/>
157
+ <xs:element ref="ship-post-code" minOccurs="1" maxOccurs="1"/>
158
+ <xs:element ref="ship-country-code" minOccurs="1" maxOccurs="1"/>
159
+ <xs:element ref="ship-phone1" minOccurs="0" maxOccurs="1"/>
160
+ <xs:element ref="ship-phone2" minOccurs="0" maxOccurs="1"/>
161
+ <xs:element ref="ship-fax" minOccurs="0" maxOccurs="1"/>
162
+ <xs:element ref="ship-email" minOccurs="0" maxOccurs="1"/>
163
+ <xs:element ref="ship-via" minOccurs="1" maxOccurs="1"/>
164
+ <xs:element ref="ship-request-date" minOccurs="1" maxOccurs="1"/>
165
+ <xs:element ref="ship-request-from" minOccurs="0" maxOccurs="1"/>
166
+ <xs:element ref="ship-request-warehouse" minOccurs="0" maxOccurs="1"/>
167
+ <xs:element ref="ship-to-code" minOccurs="0" maxOccurs="1"/>
168
+ </xs:sequence>
169
+ </xs:complexType>
170
+ </xs:element>
171
+ <xs:element name="ship-first-name" type="xs:string"/>
172
+ <xs:element name="ship-last-name" type="xs:string"/>
173
+ <xs:element name="ship-middle-initial" type="xs:string"/>
174
+ <xs:element name="ship-address1" type="xs:string"/>
175
+ <xs:element name="ship-address2" type="xs:string"/>
176
+ <xs:element name="ship-address3" type="xs:string"/>
177
+ <xs:element name="ship-city" type="xs:string"/>
178
+ <xs:element name="ship-state" type="xs:string"/>
179
+ <xs:element name="ship-post-code" type="xs:string"/>
180
+ <xs:element name="ship-country-code" type="xs:string"/>
181
+ <xs:element name="ship-phone1" type="xs:string"/>
182
+ <xs:element name="ship-phone2" type="xs:string"/>
183
+ <xs:element name="ship-fax" type="xs:string"/>
184
+ <xs:element name="ship-email" type="xs:string"/>
185
+ <xs:element name="ship-via" type="xs:string"/>
186
+ <xs:element name="ship-request-date" type="xs:string">
187
+ <xs:annotation>
188
+ <xs:documentation xml:lang="en">Date on which order is requested for shipment. In CCYYMMDD.</xs:documentation>
189
+ </xs:annotation>
190
+ </xs:element>
191
+ <xs:element name="ship-request-from" type="xs:string">
192
+ <xs:annotation>
193
+ <xs:documentation xml:lang="en">City from which Shipment is requested.</xs:documentation>
194
+ </xs:annotation>
195
+ </xs:element>
196
+ <xs:element name="ship-request-warehouse" type="xs:string">
197
+ <xs:annotation>
198
+ <xs:documentation xml:lang="en">Virtual Warehouse (Site) from which Shipment is requested.</xs:documentation>
199
+ </xs:annotation>
200
+ </xs:element>
201
+ <xs:element name="ship-to-code" type="xs:string">
202
+ <xs:annotation>
203
+ <xs:documentation xml:lang="en">Permanent Ship To Code or GLN as present in Brightpoint's system.</xs:documentation>
204
+ </xs:annotation>
205
+ </xs:element>
206
+ <xs:element name="purchase-order-information">
207
+ <xs:complexType>
208
+ <xs:sequence>
209
+ <xs:element ref="purchase-order-number" minOccurs="1" maxOccurs="1"/>
210
+ <xs:element ref="account-description" minOccurs="1" maxOccurs="1"/>
211
+ <xs:element ref="purchase-order-amount" minOccurs="1" maxOccurs="1"/>
212
+ <xs:element ref="purchase-order-event" minOccurs="0" maxOccurs="1"/>
213
+ <xs:element ref="currency-code" minOccurs="1" maxOccurs="1"/>
214
+ <xs:element ref="comments" minOccurs="0" maxOccurs="1"/>
215
+ </xs:sequence>
216
+ </xs:complexType>
217
+ </xs:element>
218
+ <xs:element name="purchase-order-number" type="xs:string">
219
+ <xs:annotation>
220
+ <xs:documentation xml:lang="en">This can be stored as a unique or non-unique value. Please discuss with your Brightpoint Account Executive.</xs:documentation>
221
+ </xs:annotation>
222
+ </xs:element>
223
+ <xs:element name="account-description" type="xs:string">
224
+ <xs:annotation>
225
+ <xs:documentation xml:lang="en">Description of the account against which PO is generated.</xs:documentation>
226
+ </xs:annotation>
227
+ </xs:element>
228
+ <xs:element name="purchase-order-amount" type="xs:decimal"/>
229
+ <xs:element name="purchase-order-event" type="xs:string">
230
+ <xs:annotation>
231
+ <xs:documentation xml:lang="en">Any additional event ID associated with the PO. This can be used for linking separate system data.</xs:documentation>
232
+ </xs:annotation>
233
+ </xs:element>
234
+ <xs:element name="currency-code" type="xs:string">
235
+ <xs:annotation>
236
+ <xs:documentation xml:lang="en">Only ISO standard currency codes are allowed.</xs:documentation>
237
+ </xs:annotation>
238
+ </xs:element>
239
+ <xs:element name="comments" type="xs:string"/>
240
+ <xs:element name="credit-card-information" nillable="true">
241
+ <xs:annotation>
242
+ <xs:documentation xml:lang="en"> This element contains all credit card related information for the order. Please note that due to restrictions for PCI compliance we are only
243
+ able to receive the last 4 digits of the credit card number preceded by Xs for each of the other digits. </xs:documentation>
244
+ </xs:annotation>
245
+ <xs:complexType>
246
+ <xs:sequence>
247
+ <xs:element ref="credit-card-number" minOccurs="1" maxOccurs="1"/>
248
+ <xs:element ref="credit-card-expiration-date" minOccurs="1" maxOccurs="1"/>
249
+ <xs:element ref="credit-card-identification" minOccurs="1" maxOccurs="1"/>
250
+ <xs:element ref="global-card-classification-code" minOccurs="1" maxOccurs="1"/>
251
+ <xs:element ref="card-holder-name" minOccurs="1" maxOccurs="1"/>
252
+ <xs:element ref="card-holder-address1" minOccurs="1" maxOccurs="1"/>
253
+ <xs:element ref="card-holder-address2" minOccurs="0" maxOccurs="1"/>
254
+ <xs:element ref="card-holder-city" minOccurs="1" maxOccurs="1"/>
255
+ <xs:element ref="card-holder-state" minOccurs="1" maxOccurs="1"/>
256
+ <xs:element ref="card-holder-post-code" minOccurs="1" maxOccurs="1"/>
257
+ <xs:element ref="card-holder-country-code" minOccurs="1" maxOccurs="1"/>
258
+ <xs:element ref="authorized-amount" minOccurs="0" maxOccurs="1"/>
259
+ <xs:element ref="billing-sequence-number" minOccurs="0" maxOccurs="1"/>
260
+ <xs:element ref="billing-authorization-response" minOccurs="0" maxOccurs="1"/>
261
+ <xs:element ref="billing-address-match" minOccurs="0" maxOccurs="1"/>
262
+ <xs:element ref="billing-zip-match" minOccurs="0" maxOccurs="1"/>
263
+ <xs:element ref="avs-hold" minOccurs="0" maxOccurs="1"/>
264
+ <xs:element ref="merchant-name" minOccurs="0" maxOccurs="1"/>
265
+ </xs:sequence>
266
+ </xs:complexType>
267
+ </xs:element>
268
+ <xs:element name="credit-card-number" type="xs:string">
269
+ <xs:annotation>
270
+ <xs:documentation xml:lang="en">Credit Cart Account Number. This should only have the last 4 digits exposed and the other values must be masked over.</xs:documentation>
271
+ </xs:annotation>
272
+ </xs:element>
273
+ <xs:element name="credit-card-expiration-date" type="xs:string">
274
+ <xs:annotation>
275
+ <xs:documentation xml:lang="en">Date of Expiration on the Credit Card Account. In CCYYMM Format.</xs:documentation>
276
+ </xs:annotation>
277
+ </xs:element>
278
+ <xs:element name="credit-card-identification" type="xs:string">
279
+ <xs:annotation>
280
+ <xs:documentation xml:lang="en">Identification Name of Credit Card issuing authority. Ex: VISA, MC, AMEX.</xs:documentation>
281
+ </xs:annotation>
282
+ </xs:element>
283
+ <xs:element name="global-card-classification-code" type="xs:string">
284
+ <xs:annotation>
285
+ <xs:documentation xml:lang="en">Global Identification of Credit Card issuing authority.</xs:documentation>
286
+ </xs:annotation>
287
+ </xs:element>
288
+ <xs:element name="card-holder-name" type="xs:string">
289
+ <xs:annotation>
290
+ <xs:documentation xml:lang="en">Name of Card Holder.</xs:documentation>
291
+ </xs:annotation>
292
+ </xs:element>
293
+ <xs:element name="card-holder-address1" type="xs:string">
294
+ <xs:annotation>
295
+ <xs:documentation xml:lang="en">Address1 field for Credit Card Holder.</xs:documentation>
296
+ </xs:annotation>
297
+ </xs:element>
298
+ <xs:element name="card-holder-address2" type="xs:string">
299
+ <xs:annotation>
300
+ <xs:documentation xml:lang="en">Address2 field for Credit Card Holder.</xs:documentation>
301
+ </xs:annotation>
302
+ </xs:element>
303
+ <xs:element name="card-holder-city" type="xs:string">
304
+ <xs:annotation>
305
+ <xs:documentation xml:lang="en">City field for Credit Card Holder.</xs:documentation>
306
+ </xs:annotation>
307
+ </xs:element>
308
+ <xs:element name="card-holder-state" type="xs:string">
309
+ <xs:annotation>
310
+ <xs:documentation xml:lang="en">State field for Credit Card Holder.</xs:documentation>
311
+ </xs:annotation>
312
+ </xs:element>
313
+ <xs:element name="card-holder-post-code" type="xs:string">
314
+ <xs:annotation>
315
+ <xs:documentation xml:lang="en">Post Code field for Credit Card Holder.</xs:documentation>
316
+ </xs:annotation>
317
+ </xs:element>
318
+ <xs:element name="card-holder-country-code" type="xs:string">
319
+ <xs:annotation>
320
+ <xs:documentation xml:lang="en">Country Code field for Credit Card Holder. Must be compliant with the ISO Standard for Currency Codes.</xs:documentation>
321
+ </xs:annotation>
322
+ </xs:element>
323
+ <xs:element name="authorized-amount" type="xs:decimal">
324
+ <xs:annotation>
325
+ <xs:documentation xml:lang="en">The amount that has been authorized on the order as approved for fund capture.</xs:documentation>
326
+ </xs:annotation>
327
+ </xs:element>
328
+ <xs:element name="billing-sequence-number" type="xs:string">
329
+ <xs:annotation>
330
+ <xs:documentation xml:lang="en">The sequence number issued by the credit card authority for authorization code.</xs:documentation>
331
+ </xs:annotation>
332
+ </xs:element>
333
+ <xs:element name="billing-authorization-response" type="xs:string">
334
+ <xs:annotation>
335
+ <xs:documentation xml:lang="en">The authorization response string for credit card authorization requests.</xs:documentation>
336
+ </xs:annotation>
337
+ </xs:element>
338
+ <xs:element name="billing-address-match" type="xs:string">
339
+ <xs:annotation>
340
+ <xs:documentation xml:lang="en">The string to determine if the billing street address matched with the record on the credit card or not. This is a Y or an N.</xs:documentation>
341
+ </xs:annotation>
342
+ </xs:element>
343
+ <xs:element name="billing-zip-match" type="xs:string">
344
+ <xs:annotation>
345
+ <xs:documentation xml:lang="en">The string to determine if the billing post code matched with the record on the credit card or not. This is a Y or an N.</xs:documentation>
346
+ </xs:annotation>
347
+ </xs:element>
348
+ <xs:element name="avs-hold" type="xs:string">
349
+ <xs:annotation>
350
+ <xs:documentation xml:lang="en">The string to determine if the credit card authorization is on AVS hold or not. This is a Y or an N.</xs:documentation>
351
+ </xs:annotation>
352
+ </xs:element>
353
+ <xs:element name="merchant-name" type="xs:string">
354
+ <xs:annotation>
355
+ <xs:documentation xml:lang="en">The merchant account against which the credit request has been placed.</xs:documentation>
356
+ </xs:annotation>
357
+ </xs:element>
358
+ <xs:element name="order-header">
359
+ <xs:annotation>
360
+ <xs:documentation xml:lang="en">Main Element that contains all basic order related information.</xs:documentation>
361
+ </xs:annotation>
362
+ <xs:complexType>
363
+ <xs:sequence>
364
+ <xs:element ref="customer-order-number" minOccurs="0" maxOccurs="1"/>
365
+ <xs:element ref="customer-order-date" minOccurs="1" maxOccurs="1"/>
366
+ <xs:element ref="brightpoint-order-number" minOccurs="0" maxOccurs="1"/>
367
+ <xs:element ref="order-reference" minOccurs="0" maxOccurs="1"/>
368
+ <xs:element ref="brightpoint-return-number" minOccurs="0" maxOccurs="1"/>
369
+ <xs:element ref="order-status" minOccurs="0" maxOccurs="1"/>
370
+ <xs:element ref="order-sub-total" minOccurs="0" maxOccurs="1"/>
371
+ <xs:element ref="order-discount" minOccurs="0" maxOccurs="1"/>
372
+ <xs:element ref="order-tax1" minOccurs="0" maxOccurs="1"/>
373
+ <xs:element ref="order-tax2" minOccurs="0" maxOccurs="1"/>
374
+ <xs:element ref="order-tax3" minOccurs="0" maxOccurs="1"/>
375
+ <xs:element ref="order-shipment-charge" minOccurs="0" maxOccurs="1"/>
376
+ <xs:element ref="order-total-net" minOccurs="0" maxOccurs="1"/>
377
+ <xs:element ref="order-type" minOccurs="1" maxOccurs="1"/>
378
+ <xs:element ref="gift-flag" minOccurs="0" maxOccurs="1"/>
379
+ </xs:sequence>
380
+ </xs:complexType>
381
+ </xs:element>
382
+ <xs:element name="customer-order-number" type="xs:string">
383
+ <xs:annotation>
384
+ <xs:documentation xml:lang="en">Order number in sender's system. This is not a required value for the message but if you do send it, it must be unique in your system. You can
385
+ also send your PO# here if it is unique. Brightpoint requires that the Customer Order Number be unique in order to eliminate processing of duplicate orders to the same
386
+ customer. </xs:documentation>
387
+ </xs:annotation>
388
+ </xs:element>
389
+ <xs:element name="customer-order-date" type="xs:string">
390
+ <xs:annotation>
391
+ <xs:documentation xml:lang="en">Order Date on sender's system. This is pass-through information. In CCYYMMDD.</xs:documentation>
392
+ </xs:annotation>
393
+ </xs:element>
394
+ <xs:element name="brightpoint-order-number" type="xs:string">
395
+ <xs:annotation>
396
+ <xs:documentation xml:lang="en">Order number in Brightpoint's system if the order was originally shipped by Brightpoint and needs to be tracked as such. </xs:documentation>
397
+ </xs:annotation>
398
+ </xs:element>
399
+ <xs:element name="order-reference" type="xs:string">
400
+ <xs:annotation>
401
+ <xs:documentation xml:lang="en">This is the Order Reference. This is a pass-through information.</xs:documentation>
402
+ </xs:annotation>
403
+ </xs:element>
404
+ <xs:element name="brightpoint-return-number" type="xs:string">
405
+ <xs:annotation>
406
+ <xs:documentation xml:lang="en">Return process number in Brightpoint's system for the receipt of goods.</xs:documentation>
407
+ </xs:annotation>
408
+ </xs:element>
409
+ <xs:element name="order-status" type="xs:string"/>
410
+ <xs:element name="order-sub-total" type="xs:decimal">
411
+ <xs:annotation>
412
+ <xs:documentation xml:lang="en">Sub-total amount for the order. This is pass-through information. </xs:documentation>
413
+ </xs:annotation>
414
+ </xs:element>
415
+ <xs:element name="order-discount" type="xs:decimal">
416
+ <xs:annotation>
417
+ <xs:documentation xml:lang="en">Discounted amount on the order. This is pass-through information. </xs:documentation>
418
+ </xs:annotation>
419
+ </xs:element>
420
+ <xs:element name="order-tax1" type="xs:decimal">
421
+ <xs:annotation>
422
+ <xs:documentation xml:lang="en">Primary tax field. Should contain the value of Sales Tax, Value Added Tax (VAT) etc. This is pass-through information.</xs:documentation>
423
+ </xs:annotation>
424
+ </xs:element>
425
+ <xs:element name="order-tax2" type="xs:decimal">
426
+ <xs:annotation>
427
+ <xs:documentation xml:lang="en">Integration specific second tax field. This is pass-through information.</xs:documentation>
428
+ </xs:annotation>
429
+ </xs:element>
430
+ <xs:element name="order-tax3" type="xs:decimal">
431
+ <xs:annotation>
432
+ <xs:documentation xml:lang="en">Integration specific third tax field. This is pass-through information.</xs:documentation>
433
+ </xs:annotation>
434
+ </xs:element>
435
+ <xs:element name="order-shipment-charge" type="xs:decimal">
436
+ <xs:annotation>
437
+ <xs:documentation xml:lang="en">Charge for shipment of product. If freeze-freight has a value of N, this is pass-through information.</xs:documentation>
438
+ </xs:annotation>
439
+ </xs:element>
440
+ <xs:element name="order-total-net" type="xs:decimal">
441
+ <xs:annotation>
442
+ <xs:documentation xml:lang="en">Net total on Order. This is pass-through information. </xs:documentation>
443
+ </xs:annotation>
444
+ </xs:element>
445
+ <xs:element name="order-type" type="xs:string">
446
+ <xs:annotation>
447
+ <xs:documentation xml:lang="en">Order Type on Brightpoint's system.</xs:documentation>
448
+ </xs:annotation>
449
+ </xs:element>
450
+ <xs:element name="gift-flag" type="xs:string">
451
+ <xs:annotation>
452
+ <xs:documentation xml:lang="en">Deprecated field that is no longer supported.</xs:documentation>
453
+ </xs:annotation>
454
+ </xs:element>
455
+ <xs:element name="detail">
456
+ <xs:annotation>
457
+ <xs:documentation xml:lang="en">All lines associated with the specific header are included here.</xs:documentation>
458
+ </xs:annotation>
459
+ <xs:complexType>
460
+ <xs:sequence>
461
+ <xs:element ref="line-item" minOccurs="1" maxOccurs="unbounded"/>
462
+ </xs:sequence>
463
+ </xs:complexType>
464
+ </xs:element>
465
+ <xs:element name="line-item">
466
+ <xs:complexType>
467
+ <xs:sequence>
468
+ <xs:element ref="line-no" minOccurs="1" maxOccurs="1"/>
469
+ <xs:element ref="line-reference" minOccurs="0" maxOccurs="1"/>
470
+ <xs:element ref="transaction-id" minOccurs="0" maxOccurs="1"/>
471
+ <xs:element ref="item-code" minOccurs="1" maxOccurs="1"/>
472
+ <xs:element ref="universal-product-code" minOccurs="0" maxOccurs="1"/>
473
+ <xs:element ref="product-name" minOccurs="0" maxOccurs="1"/>
474
+ <xs:element ref="quantity" minOccurs="1" maxOccurs="1"/>
475
+ <xs:element ref="unit-of-measure" minOccurs="1" maxOccurs="1"/>
476
+ <xs:element ref="serial-list" minOccurs="0" maxOccurs="unbounded"/>
477
+ <xs:element ref="market-id" minOccurs="0" maxOccurs="1"/>
478
+ <xs:element ref="line-status" minOccurs="0" maxOccurs="1"/>
479
+ <xs:element ref="comments" minOccurs="0" maxOccurs="1"/>
480
+ <xs:element ref="rejection-date" minOccurs="0" maxOccurs="1"/>
481
+ <xs:element ref="base-price" minOccurs="0" maxOccurs="1"/>
482
+ <xs:element ref="line-discount" minOccurs="0" maxOccurs="1"/>
483
+ <xs:element ref="line-tax1" minOccurs="0" maxOccurs="1"/>
484
+ <xs:element ref="line-tax2" minOccurs="0" maxOccurs="1"/>
485
+ <xs:element ref="line-tax3" minOccurs="0" maxOccurs="1"/>
486
+ <xs:element ref="receipt-date" minOccurs="0" maxOccurs="1"/>
487
+ <xs:element ref="service-type" minOccurs="0" maxOccurs="1"/>
488
+ <xs:element ref="return-reason-code" minOccurs="0" maxOccurs="1"/>
489
+ <xs:element ref="failure-reason" minOccurs="0" maxOccurs="1"/>
490
+ <xs:element ref="special-message" minOccurs="0" maxOccurs="1"/>
491
+ </xs:sequence>
492
+ </xs:complexType>
493
+ </xs:element>
494
+ <xs:element name="line-no" type="xs:string">
495
+ <xs:annotation>
496
+ <xs:documentation xml:lang="en">Line Number at the detail level in customer's system.</xs:documentation>
497
+ </xs:annotation>
498
+ </xs:element>
499
+ <xs:element name="line-reference" type="xs:string">
500
+ <xs:annotation>
501
+ <xs:documentation xml:lang="en">The customers line reference value in the customer's system. This is pass-through information. This field has been added since December 2008.</xs:documentation>
502
+ </xs:annotation>
503
+ </xs:element>
504
+ <xs:element name="transaction-id" type="xs:string">
505
+ <xs:annotation>
506
+ <xs:documentation xml:lang="en">Transaction ID in Brightpoint's system for this line.</xs:documentation>
507
+ </xs:annotation>
508
+ </xs:element>
509
+ <xs:element name="item-code" type="xs:string">
510
+ <xs:annotation>
511
+ <xs:documentation xml:lang="en">Item Code for the product on Brightpoint's system.</xs:documentation>
512
+ </xs:annotation>
513
+ </xs:element>
514
+ <xs:element name="universal-product-code" type="xs:string">
515
+ <xs:annotation>
516
+ <xs:documentation xml:lang="en">UPC for the product.</xs:documentation>
517
+ </xs:annotation>
518
+ </xs:element>
519
+ <xs:element name="product-name" type="xs:string">
520
+ <xs:annotation>
521
+ <xs:documentation xml:lang="en">Name of product in the manufacturer's system.</xs:documentation>
522
+ </xs:annotation>
523
+ </xs:element>
524
+ <xs:element name="quantity" type="xs:decimal">
525
+ <xs:annotation>
526
+ <xs:documentation xml:lang="en">Number of units of product ordered.</xs:documentation>
527
+ </xs:annotation>
528
+ </xs:element>
529
+ <xs:element name="unit-of-measure" type="xs:string">
530
+ <xs:annotation>
531
+ <xs:documentation xml:lang="en"> The Unit of Measure used to associate with the quantity. This is to ensure that the proper multiples are used for the order. Example: EA -
532
+ Each, CT - Carton, PT - Pallet </xs:documentation>
533
+ </xs:annotation>
534
+ </xs:element>
535
+ <xs:element name="serial-list">
536
+ <xs:annotation>
537
+ <xs:documentation xml:lang="en">The list of serial numbers associated with the return. Each unit has a grouping of serial numbers that are related to each other.</xs:documentation>
538
+ </xs:annotation>
539
+ <xs:complexType>
540
+ <xs:sequence>
541
+ <xs:element ref="serial-numbers" minOccurs="1" maxOccurs="unbounded"/>
542
+ </xs:sequence>
543
+ </xs:complexType>
544
+ </xs:element>
545
+ <xs:element name="serial-numbers">
546
+ <xs:complexType>
547
+ <xs:sequence>
548
+ <xs:element ref="min" minOccurs="0" maxOccurs="1"/>
549
+ <xs:element ref="mdn" minOccurs="0" maxOccurs="1"/>
550
+ <xs:element ref="esn" minOccurs="0" maxOccurs="1"/>
551
+ <xs:element ref="sim" minOccurs="0" maxOccurs="1"/>
552
+ <xs:element ref="imei" minOccurs="0" maxOccurs="1"/>
553
+ <xs:element ref="sid" minOccurs="0" maxOccurs="1"/>
554
+ <xs:element ref="meid" minOccurs="0" maxOccurs="1"/>
555
+ </xs:sequence>
556
+ </xs:complexType>
557
+ </xs:element>
558
+ <xs:element name="min" type="xs:string"/>
559
+ <xs:element name="mdn" type="xs:string"/>
560
+ <xs:element name="esn" type="xs:string"/>
561
+ <xs:element name="sim" type="xs:string"/>
562
+ <xs:element name="imei" type="xs:string"/>
563
+ <xs:element name="sid" type="xs:string"/>
564
+ <xs:element name="meid" type="xs:string"/>
565
+ <xs:element name="market-id" type="xs:string">
566
+ <xs:annotation>
567
+ <xs:documentation xml:lang="en">Market ID for the device</xs:documentation>
568
+ </xs:annotation>
569
+ </xs:element>
570
+ <xs:element name="line-status" type="xs:string">
571
+ <xs:annotation>
572
+ <xs:documentation xml:lang="en">Status of line in customer's system. This is pass-through information.</xs:documentation>
573
+ </xs:annotation>
574
+ </xs:element>
575
+ <xs:element name="rejection-date" type="xs:string">
576
+ <xs:annotation>
577
+ <xs:documentation xml:lang="en">Date on which return was rejected. In CCYYMMDD.</xs:documentation>
578
+ </xs:annotation>
579
+ </xs:element>
580
+ <xs:element name="base-price" type="xs:decimal">
581
+ <xs:annotation>
582
+ <xs:documentation xml:lang="en">Base price of line item.</xs:documentation>
583
+ </xs:annotation>
584
+ </xs:element>
585
+ <xs:element name="line-discount" type="xs:decimal">
586
+ <xs:annotation>
587
+ <xs:documentation xml:lang="en">Discount on Line Item. This is pass-through information.</xs:documentation>
588
+ </xs:annotation>
589
+ </xs:element>
590
+ <xs:element name="line-tax1" type="xs:decimal">
591
+ <xs:annotation>
592
+ <xs:documentation xml:lang="en">Primary tax field for line item. Should contain the value of Sales Tax, Value Added Tax (VAT) etc. This is pass-through information.</xs:documentation>
593
+ </xs:annotation>
594
+ </xs:element>
595
+ <xs:element name="line-tax2" type="xs:decimal">
596
+ <xs:annotation>
597
+ <xs:documentation xml:lang="en">Integration specific second tax field for line item. This is pass-through information.</xs:documentation>
598
+ </xs:annotation>
599
+ </xs:element>
600
+ <xs:element name="line-tax3" type="xs:decimal">
601
+ <xs:annotation>
602
+ <xs:documentation xml:lang="en">Integration specific third tax field for line item. This is pass-through information.</xs:documentation>
603
+ </xs:annotation>
604
+ </xs:element>
605
+ <xs:element name="receipt-date" type="xs:string">
606
+ <xs:annotation>
607
+ <xs:documentation xml:lang="en">Date on which line was received. In CCYYMMDD.</xs:documentation>
608
+ </xs:annotation>
609
+ </xs:element>
610
+ <xs:element name="service-type" type="xs:string">
611
+ <xs:annotation>
612
+ <xs:documentation xml:lang="en">Type of service performed for return.</xs:documentation>
613
+ </xs:annotation>
614
+ </xs:element>
615
+ <xs:element name="return-reason-code" type="xs:string">
616
+ <xs:annotation>
617
+ <xs:documentation xml:lang="en">The reason code associated with this return.</xs:documentation>
618
+ </xs:annotation>
619
+ </xs:element>
620
+ <xs:element name="failure-reason" type="xs:string">
621
+ <xs:annotation>
622
+ <xs:documentation xml:lang="en">The failure reason for this return.</xs:documentation>
623
+ </xs:annotation>
624
+ </xs:element>
625
+ <xs:element name="special-message">
626
+ <xs:annotation>
627
+ <xs:documentation>Cistomer specific special message</xs:documentation>
628
+ </xs:annotation>
629
+ <xs:complexType>
630
+ <xs:sequence>
631
+ <xs:element ref="special-message1" minOccurs="0" maxOccurs="1"/>
632
+ <xs:element ref="special-message2" minOccurs="0" maxOccurs="1"/>
633
+ <xs:element ref="special-message3" minOccurs="0" maxOccurs="1"/>
634
+ <xs:element ref="special-message4" minOccurs="0" maxOccurs="1"/>
635
+ <xs:element ref="special-message5" minOccurs="0" maxOccurs="1"/>
636
+ </xs:sequence>
637
+ </xs:complexType>
638
+ </xs:element>
639
+ <xs:element name="special-message1" type="xs:string">
640
+ <xs:annotation>
641
+ <xs:documentation xml:lang="en">Special Message 1.</xs:documentation>
642
+ </xs:annotation>
643
+ </xs:element>
644
+ <xs:element name="special-message2" type="xs:string">
645
+ <xs:annotation>
646
+ <xs:documentation xml:lang="en">Special Message 2.</xs:documentation>
647
+ </xs:annotation>
648
+ </xs:element>
649
+ <xs:element name="special-message3" type="xs:string">
650
+ <xs:annotation>
651
+ <xs:documentation xml:lang="en">Special Message 3.</xs:documentation>
652
+ </xs:annotation>
653
+ </xs:element>
654
+ <xs:element name="special-message4" type="xs:string">
655
+ <xs:annotation>
656
+ <xs:documentation xml:lang="en">Special Message 4.</xs:documentation>
657
+ </xs:annotation>
658
+ </xs:element>
659
+ <xs:element name="special-message5" type="xs:string">
660
+ <xs:annotation>
661
+ <xs:documentation xml:lang="en">Special Message 5.</xs:documentation>
662
+ </xs:annotation>
663
+ </xs:element>
664
+ </xs:schema>