ingram_micro 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
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,696 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3
+ <xs:annotation>
4
+ <xs:documentation xml:lang="en"> This schema captures the requirement details for the Sales Order Load Success update process. The XML document generated by Brightpoint will be based on this schema and information available will be based on the elements specified in this transaction. </xs:documentation>
5
+ </xs:annotation>
6
+ <xs:element name="message">
7
+ <xs:annotation>
8
+ <xs:documentation xml:lang="en"> This is the root document element used to encapsulate the entire message. </xs:documentation>
9
+ </xs:annotation>
10
+ <xs:complexType>
11
+ <xs:sequence>
12
+ <xs:element ref="message-header" minOccurs="1" maxOccurs="1"/>
13
+ <xs:element ref="sales-order-success" minOccurs="1" maxOccurs="1"/>
14
+ <xs:element ref="transactionInfo" minOccurs="1" maxOccurs="1"/>
15
+ </xs:sequence>
16
+ </xs:complexType>
17
+ </xs:element>
18
+ <xs:element name="message-header">
19
+ <xs:annotation>
20
+ <xs:documentation xml:lang="en"> Collection of basic message information about the original XML Document </xs:documentation>
21
+ </xs:annotation>
22
+ <xs:complexType>
23
+ <xs:sequence>
24
+ <xs:element ref="message-id" maxOccurs="1" minOccurs="1" />
25
+ <xs:element ref="transaction-name" maxOccurs="1" minOccurs="1"/>
26
+ <xs:element ref="partner-name" maxOccurs="1" minOccurs="1"/>
27
+ <xs:element ref="partner-password" minOccurs="0" maxOccurs="1"/>
28
+ <xs:element ref="source-url" minOccurs="0" maxOccurs="1"/>
29
+ <xs:element ref="create-timestamp" minOccurs="1" maxOccurs="1"/>
30
+ <xs:element ref="response-request" minOccurs="1" maxOccurs="1"/>
31
+ </xs:sequence>
32
+ </xs:complexType>
33
+ </xs:element>
34
+ <xs:element name="message-id" type="xs:integer">
35
+ <xs:annotation>
36
+ <xs:documentation xml:lang="en">Unique message identification ID</xs:documentation>
37
+ </xs:annotation>
38
+ </xs:element>
39
+ <xs:element name="transaction-name" type="xs:string" default="sales-order-success">
40
+ <xs:annotation>
41
+ <xs:documentation xml:lang="en">The name of the inbound message transaction. In the case of this transaction it is sales-order-success.</xs:documentation>
42
+ </xs:annotation>
43
+ </xs:element>
44
+ <xs:element name="partner-name" type="xs:string">
45
+ <xs:annotation>
46
+ <xs:documentation xml:lang="en">Short name of partner be used to identify mappings of data.</xs:documentation>
47
+ </xs:annotation>
48
+ </xs:element>
49
+ <xs:element name="partner-password" nillable="true" type="xs:string">
50
+ <xs:annotation>
51
+ <xs:documentation xml:lang="en">This is an optional password that can be used by the partner to add more validation. This is a message level validation that is not required
52
+ beyond the initial validation of inbound message or the final validation before submitting an outbound message.</xs:documentation>
53
+ </xs:annotation>
54
+ </xs:element>
55
+ <xs:element name="source-url" type="xs:anyURI">
56
+ <xs:annotation>
57
+ <xs:documentation xml:lang="en">Unique Resource Locator that posts the XML Document.</xs:documentation>
58
+ </xs:annotation>
59
+ </xs:element>
60
+ <xs:element name="create-timestamp" type="xs:string">
61
+ <xs:annotation>
62
+ <xs:documentation xml:lang="en">Date and Time at which XML Document was generated from source system. In CCYYMMDDHHMISS.</xs:documentation>
63
+ </xs:annotation>
64
+ </xs:element>
65
+ <xs:element name="response-request" final="#all">
66
+ <xs:annotation>
67
+ <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>
68
+ </xs:annotation>
69
+ <xs:simpleType>
70
+ <xs:restriction base="xs:integer">
71
+ <xs:enumeration value="0"/>
72
+ <xs:enumeration value="1"/>
73
+ </xs:restriction>
74
+ </xs:simpleType>
75
+ </xs:element>
76
+ <xs:element name="sales-order-success">
77
+ <xs:annotation>
78
+ <xs:documentation xml:lang="en"> Main Element for the Sales Order Success XML Document which contains all business related information </xs:documentation>
79
+ </xs:annotation>
80
+ <xs:complexType>
81
+ <xs:sequence>
82
+ <xs:element ref="header" minOccurs="1" maxOccurs="1"/>
83
+ <xs:element ref="detail" minOccurs="1" maxOccurs="1"/>
84
+ </xs:sequence>
85
+ </xs:complexType>
86
+ </xs:element>
87
+ <xs:element name="header">
88
+ <xs:annotation>
89
+ <xs:documentation xml:lang="en"> Header tag of business related information in all XML Documents </xs:documentation>
90
+ </xs:annotation>
91
+ <xs:complexType>
92
+ <xs:sequence>
93
+ <xs:element ref="customer-id" minOccurs="1" maxOccurs="1"/>
94
+ <xs:element ref="business-name" minOccurs="0" maxOccurs="1"/>
95
+ <xs:element ref="carrier-name" minOccurs="0" maxOccurs="1"/>
96
+ <xs:element ref="customer-information" minOccurs="0" maxOccurs="1"/>
97
+ <xs:element ref="shipment-information" minOccurs="1" maxOccurs="1"/>
98
+ <xs:element ref="purchase-order-information" minOccurs="0" maxOccurs="1"/>
99
+ <xs:element ref="credit-card-information" minOccurs="0" maxOccurs="1"/>
100
+ <xs:element ref="order-header" minOccurs="1" maxOccurs="1"/>
101
+ </xs:sequence>
102
+ </xs:complexType>
103
+ </xs:element>
104
+ <xs:element name="customer-id" type="xs:string">
105
+ <xs:annotation>
106
+ <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>
107
+ </xs:annotation>
108
+ </xs:element>
109
+ <xs:element name="business-name" type="xs:string">
110
+ <xs:annotation>
111
+ <xs:documentation xml:lang="en">The official name of your business.</xs:documentation>
112
+ </xs:annotation>
113
+ </xs:element>
114
+ <xs:element name="carrier-name" type="xs:string">
115
+ <xs:annotation>
116
+ <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>
117
+ </xs:annotation>
118
+ </xs:element>
119
+ <xs:element name="customer-information">
120
+ <xs:annotation>
121
+ <xs:documentation xml:lang="en">Main Element which contains all customer related information.</xs:documentation>
122
+ </xs:annotation>
123
+ <xs:complexType>
124
+ <xs:sequence>
125
+ <xs:element ref="customer-first-name" minOccurs="1" maxOccurs="1"/>
126
+ <xs:element ref="customer-last-name" minOccurs="1" maxOccurs="1"/>
127
+ <xs:element ref="customer-middle-initial" minOccurs="0" maxOccurs="1"/>
128
+ <xs:element ref="customer-address1" minOccurs="1" maxOccurs="1"/>
129
+ <xs:element ref="customer-address2" minOccurs="0" maxOccurs="1"/>
130
+ <xs:element ref="customer-address3" minOccurs="0" maxOccurs="1"/>
131
+ <xs:element ref="customer-city" minOccurs="1" maxOccurs="1"/>
132
+ <xs:element ref="customer-state" minOccurs="1" maxOccurs="1"/>
133
+ <xs:element ref="customer-post-code" minOccurs="1" maxOccurs="1"/>
134
+ <xs:element ref="customer-country-code" minOccurs="1" maxOccurs="1"/>
135
+ <xs:element ref="customer-phone1" minOccurs="0" maxOccurs="1"/>
136
+ <xs:element ref="customer-phone2" minOccurs="0" maxOccurs="1"/>
137
+ <xs:element ref="customer-fax" minOccurs="0" maxOccurs="1"/>
138
+ <xs:element ref="customer-email" minOccurs="0" maxOccurs="1"/>
139
+ </xs:sequence>
140
+ </xs:complexType>
141
+ </xs:element>
142
+ <xs:element name="customer-first-name" type="xs:string"/>
143
+ <xs:element name="customer-last-name" type="xs:string"/>
144
+ <xs:element name="customer-middle-initial" type="xs:string"/>
145
+ <xs:element name="customer-address1" type="xs:string"/>
146
+ <xs:element name="customer-address2" type="xs:string"/>
147
+ <xs:element name="customer-address3" type="xs:string"/>
148
+ <xs:element name="customer-city" type="xs:string"/>
149
+ <xs:element name="customer-state" type="xs:string"/>
150
+ <xs:element name="customer-post-code" type="xs:string"/>
151
+ <xs:element name="customer-country-code" type="xs:string"/>
152
+ <xs:element name="customer-phone1" type="xs:string"/>
153
+ <xs:element name="customer-phone2" type="xs:string"/>
154
+ <xs:element name="customer-fax" type="xs:string"/>
155
+ <xs:element name="customer-email" type="xs:string"/>
156
+ <xs:element name="shipment-information">
157
+ <xs:annotation>
158
+ <xs:documentation xml:lang="en">This element contains all shipment related information for the order.</xs:documentation>
159
+ </xs:annotation>
160
+ <xs:complexType>
161
+ <xs:sequence>
162
+ <xs:element ref="ship-first-name" minOccurs="0" maxOccurs="1"/>
163
+ <xs:element ref="ship-last-name" minOccurs="0" maxOccurs="1"/>
164
+ <xs:element ref="ship-middle-initial" minOccurs="0" maxOccurs="1"/>
165
+ <xs:element ref="ship-address1" minOccurs="0" maxOccurs="1"/>
166
+ <xs:element ref="ship-address2" minOccurs="0" maxOccurs="1"/>
167
+ <xs:element ref="ship-address3" minOccurs="0" maxOccurs="1"/>
168
+ <xs:element ref="ship-city" minOccurs="0" maxOccurs="1"/>
169
+ <xs:element ref="ship-state" minOccurs="0" maxOccurs="1"/>
170
+ <xs:element ref="ship-post-code" minOccurs="0" maxOccurs="1"/>
171
+ <xs:element ref="ship-country-code" minOccurs="0" maxOccurs="1"/>
172
+ <xs:element ref="ship-phone1" minOccurs="0" maxOccurs="1"/>
173
+ <xs:element ref="ship-phone2" minOccurs="0" maxOccurs="1"/>
174
+ <xs:element ref="ship-fax" minOccurs="0" maxOccurs="1"/>
175
+ <xs:element ref="ship-email" minOccurs="0" maxOccurs="1"/>
176
+ <xs:element ref="ship-via" minOccurs="0" maxOccurs="1"/>
177
+ <xs:element ref="ship-request-date" minOccurs="0" maxOccurs="1"/>
178
+ <xs:element ref="ship-request-from" minOccurs="0" maxOccurs="1"/>
179
+ <xs:element ref="ship-request-warehouse" minOccurs="0" maxOccurs="1"/>
180
+ </xs:sequence>
181
+ </xs:complexType>
182
+ </xs:element>
183
+ <xs:element name="ship-first-name" type="xs:string">
184
+ <xs:annotation>
185
+ <xs:documentation xml:lang="en">First Name for person that is receiving the shipment.</xs:documentation>
186
+ </xs:annotation>
187
+ </xs:element>
188
+ <xs:element name="ship-last-name" type="xs:string">
189
+ <xs:annotation>
190
+ <xs:documentation xml:lang="en">Last Name for person that is receiving the shipment.</xs:documentation>
191
+ </xs:annotation>
192
+ </xs:element>
193
+ <xs:element name="ship-middle-initial" type="xs:string">
194
+ <xs:annotation>
195
+ <xs:documentation xml:lang="en">Middle Initial for person receiving the shipment.</xs:documentation>
196
+ </xs:annotation>
197
+ </xs:element>
198
+ <xs:element name="ship-address1" type="xs:string">
199
+ <xs:annotation>
200
+ <xs:documentation xml:lang="en">Address1 field for person receiving the shipment.</xs:documentation>
201
+ </xs:annotation>
202
+ </xs:element>
203
+ <xs:element name="ship-address2" type="xs:string">
204
+ <xs:annotation>
205
+ <xs:documentation xml:lang="en">Address2 field for person receiving the shipment.</xs:documentation>
206
+ </xs:annotation>
207
+ </xs:element>
208
+ <xs:element name="ship-address3" nillable="true" type="xs:string">
209
+ <xs:annotation>
210
+ <xs:documentation xml:lang="en">Address3 field for person receiving the shipment.</xs:documentation>
211
+ </xs:annotation>
212
+ </xs:element>
213
+ <xs:element name="ship-city" type="xs:string">
214
+ <xs:annotation>
215
+ <xs:documentation xml:lang="en">City field for person receiving the shipment.</xs:documentation>
216
+ </xs:annotation>
217
+ </xs:element>
218
+ <xs:element name="ship-state" type="xs:string">
219
+ <xs:annotation>
220
+ <xs:documentation xml:lang="en">State field for person receiving the shipment.</xs:documentation>
221
+ </xs:annotation>
222
+ </xs:element>
223
+ <xs:element name="ship-post-code" type="xs:string">
224
+ <xs:annotation>
225
+ <xs:documentation xml:lang="en">Postal Code field for person receiving the shipment.</xs:documentation>
226
+ </xs:annotation>
227
+ </xs:element>
228
+ <xs:element name="ship-country-code" type="xs:string">
229
+ <xs:annotation>
230
+ <xs:documentation xml:lang="en">Country Code field for person receiving the shipment. Must be compliant with the ISO Standard for Country Codes.</xs:documentation>
231
+ </xs:annotation>
232
+ </xs:element>
233
+ <xs:element name="ship-phone1" type="xs:string">
234
+ <xs:annotation>
235
+ <xs:documentation xml:lang="en">Primary Phone Number for person receiving the shipment.</xs:documentation>
236
+ </xs:annotation>
237
+ </xs:element>
238
+ <xs:element name="ship-phone2" nillable="true" type="xs:string">
239
+ <xs:annotation>
240
+ <xs:documentation xml:lang="en">Secondary Phone Number for person receiving the shipment.</xs:documentation>
241
+ </xs:annotation>
242
+ </xs:element>
243
+ <xs:element name="ship-fax" nillable="true" type="xs:string">
244
+ <xs:annotation>
245
+ <xs:documentation xml:lang="en">Facsimile Number for person receiving the shipment.</xs:documentation>
246
+ </xs:annotation>
247
+ </xs:element>
248
+ <xs:element name="ship-email" type="xs:string">
249
+ <xs:annotation>
250
+ <xs:documentation xml:lang="en">Email Address for person receiving the shipment.</xs:documentation>
251
+ </xs:annotation>
252
+ </xs:element>
253
+ <xs:element name="ship-via" type="xs:string">
254
+ <xs:annotation>
255
+ <xs:documentation xml:lang="en">The Standard Carrier Alpha Code value that is recognized by Brightpoint.</xs:documentation>
256
+ </xs:annotation>
257
+ </xs:element>
258
+ <xs:element name="ship-request-date" type="xs:string">
259
+ <xs:annotation>
260
+ <xs:documentation xml:lang="en">Date on which order is requested for shipment. In CCYYMMDD.</xs:documentation>
261
+ </xs:annotation>
262
+ </xs:element>
263
+ <xs:element name="ship-request-from" type="xs:string">
264
+ <xs:annotation>
265
+ <xs:documentation xml:lang="en">City from which Shipment is requested.</xs:documentation>
266
+ </xs:annotation>
267
+ </xs:element>
268
+ <xs:element name="ship-request-warehouse" type="xs:string">
269
+ <xs:annotation>
270
+ <xs:documentation xml:lang="en">Virtual Warehouse (Site) from which Shipment is requested.</xs:documentation>
271
+ </xs:annotation>
272
+ </xs:element>
273
+ <xs:element name="purchase-order-information">
274
+ <xs:annotation>
275
+ <xs:documentation xml:lang="en">This element contains all purchase order related information for the order.</xs:documentation>
276
+ </xs:annotation>
277
+ <xs:complexType>
278
+ <xs:sequence>
279
+ <xs:element ref="purchase-order-number" minOccurs="1" maxOccurs="1"/>
280
+ <xs:element ref="account-description" minOccurs="1" maxOccurs="1"/>
281
+ <xs:element ref="purchase-order-amount" minOccurs="0" maxOccurs="1"/>
282
+ <xs:element ref="currency-code" minOccurs="0" maxOccurs="1"/>
283
+ <xs:element ref="comments" minOccurs="0" maxOccurs="unbounded"/>
284
+ </xs:sequence>
285
+ </xs:complexType>
286
+ </xs:element>
287
+ <xs:element name="purchase-order-number" type="xs:string">
288
+ <xs:annotation>
289
+ <xs:documentation xml:lang="en">Purchase Order Number to be used.</xs:documentation>
290
+ </xs:annotation>
291
+ </xs:element>
292
+ <xs:element name="account-description" type="xs:string">
293
+ <xs:annotation>
294
+ <xs:documentation xml:lang="en">Description of the account against which PO is generated.</xs:documentation>
295
+ </xs:annotation>
296
+ </xs:element>
297
+ <xs:element name="purchase-order-amount" type="xs:decimal">
298
+ <xs:annotation>
299
+ <xs:documentation xml:lang="en">Total Amount that is assigned to the
300
+ specific Purchase Order.</xs:documentation>
301
+ </xs:annotation>
302
+ </xs:element>
303
+ <xs:element name="currency-code" type="xs:string">
304
+ <xs:annotation>
305
+ <xs:documentation xml:lang="en">Currency Code associated with a Currency Amount. Must be compliant with the ISO Standard for Currency Codes.</xs:documentation>
306
+ </xs:annotation>
307
+ </xs:element>
308
+ <xs:element name="comments" type="xs:string"/>
309
+ <xs:element name="credit-card-information" nillable="true">
310
+ <xs:annotation>
311
+ <xs:documentation xml:lang="en">This element contains all credit card related information for the order.</xs:documentation>
312
+ </xs:annotation>
313
+ <xs:complexType>
314
+ <xs:sequence>
315
+ <xs:element ref="credit-card-number" minOccurs="1" maxOccurs="1"/>
316
+ <xs:element ref="credit-card-expiration-date" minOccurs="1" maxOccurs="1"/>
317
+ <xs:element ref="credit-card-identification" minOccurs="1" maxOccurs="1"/>
318
+ <xs:element ref="global-card-classification-code" minOccurs="1" maxOccurs="1"/>
319
+ <xs:element ref="card-holder-name" minOccurs="1" maxOccurs="1"/>
320
+ <xs:element ref="card-holder-address1" minOccurs="1" maxOccurs="1"/>
321
+ <xs:element ref="card-holder-address2" minOccurs="0" maxOccurs="1"/>
322
+ <xs:element ref="card-holder-city" minOccurs="1" maxOccurs="1"/>
323
+ <xs:element ref="card-holder-state" minOccurs="1" maxOccurs="1"/>
324
+ <xs:element ref="card-holder-post-code" minOccurs="1" maxOccurs="1"/>
325
+ <xs:element ref="card-holder-country-code" minOccurs="1" maxOccurs="1"/>
326
+ </xs:sequence>
327
+ </xs:complexType>
328
+ </xs:element>
329
+ <xs:element name="credit-card-number" type="xs:string">
330
+ <xs:annotation>
331
+ <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>
332
+ </xs:annotation>
333
+ </xs:element>
334
+ <xs:element name="credit-card-expiration-date" type="xs:string">
335
+ <xs:annotation>
336
+ <xs:documentation xml:lang="en">Date of Expiration on the Credit Card Account. In CCYYMM Format.</xs:documentation>
337
+ </xs:annotation>
338
+ </xs:element>
339
+ <xs:element name="credit-card-identification" type="xs:string">
340
+ <xs:annotation>
341
+ <xs:documentation xml:lang="en">Identification Name of Credit Card issuing authority. Ex: VISA, MC, AMEX.</xs:documentation>
342
+ </xs:annotation>
343
+ </xs:element>
344
+ <xs:element name="global-card-classification-code" type="xs:string">
345
+ <xs:annotation>
346
+ <xs:documentation xml:lang="en">Global Identification of Credit Card issuing authority.</xs:documentation>
347
+ </xs:annotation>
348
+ </xs:element>
349
+ <xs:element name="card-holder-name" type="xs:string">
350
+ <xs:annotation>
351
+ <xs:documentation xml:lang="en">Name of Card Holder.</xs:documentation>
352
+ </xs:annotation>
353
+ </xs:element>
354
+ <xs:element name="card-holder-address1" type="xs:string">
355
+ <xs:annotation>
356
+ <xs:documentation xml:lang="en">Address1 field for Credit Card Holder.</xs:documentation>
357
+ </xs:annotation>
358
+ </xs:element>
359
+ <xs:element name="card-holder-address2" type="xs:string">
360
+ <xs:annotation>
361
+ <xs:documentation xml:lang="en">Address2 field for Credit Card Holder.</xs:documentation>
362
+ </xs:annotation>
363
+ </xs:element>
364
+ <xs:element name="card-holder-city" type="xs:string">
365
+ <xs:annotation>
366
+ <xs:documentation xml:lang="en">City field for Credit Card Holder.</xs:documentation>
367
+ </xs:annotation>
368
+ </xs:element>
369
+ <xs:element name="card-holder-state" type="xs:string">
370
+ <xs:annotation>
371
+ <xs:documentation xml:lang="en">State field for Credit Card Holder.</xs:documentation>
372
+ </xs:annotation>
373
+ </xs:element>
374
+ <xs:element name="card-holder-post-code" type="xs:string">
375
+ <xs:annotation>
376
+ <xs:documentation xml:lang="en">Post Code field for Credit Card Holder.</xs:documentation>
377
+ </xs:annotation>
378
+ </xs:element>
379
+ <xs:element name="card-holder-country-code" type="xs:string">
380
+ <xs:annotation>
381
+ <xs:documentation xml:lang="en">Country Code field for Credit Card Holder. Must be compliant with the ISO Standard for Currency Codes.</xs:documentation>
382
+ </xs:annotation>
383
+ </xs:element>
384
+ <xs:element name="order-header">
385
+ <xs:annotation>
386
+ <xs:documentation xml:lang="en">Main Element that contains all basic order related information.</xs:documentation>
387
+ </xs:annotation>
388
+ <xs:complexType>
389
+ <xs:sequence>
390
+ <xs:element ref="customer-order-number" minOccurs="1" maxOccurs="1"/>
391
+ <xs:element ref="customer-order-date" minOccurs="0" maxOccurs="1"/>
392
+ <xs:element ref="brightpoint-order-number" minOccurs="0" maxOccurs="1"/>
393
+ <xs:element ref="order-reference" minOccurs="0" maxOccurs="1"/>
394
+ <xs:element ref="order-sub-total" minOccurs="0" maxOccurs="1"/>
395
+ <xs:element ref="order-discount" minOccurs="0" maxOccurs="1"/>
396
+ <xs:element ref="order-tax1" minOccurs="0" maxOccurs="1"/>
397
+ <xs:element ref="order-tax2" minOccurs="0" maxOccurs="1"/>
398
+ <xs:element ref="order-tax3" minOccurs="0" maxOccurs="1"/>
399
+ <xs:element ref="order-shipment-charge" minOccurs="0" maxOccurs="1"/>
400
+ <xs:element ref="order-total-net" minOccurs="0" maxOccurs="1"/>
401
+ <xs:element ref="order-type" minOccurs="0" maxOccurs="1"/>
402
+ <xs:element ref="gift-flag" minOccurs="0" maxOccurs="1"/>
403
+ </xs:sequence>
404
+ </xs:complexType>
405
+ </xs:element>
406
+ <xs:element name="customer-order-number" type="xs:string">
407
+ <xs:annotation>
408
+ <xs:documentation xml:lang="en">Order number on sender's system. Evavi to decide if Customer Order Number and Customer PO number are different or not. </xs:documentation>
409
+ </xs:annotation>
410
+ </xs:element>
411
+ <xs:element name="customer-order-date" type="xs:string">
412
+ <xs:annotation>
413
+ <xs:documentation xml:lang="en">Order Date on sender's system. This is pass-through information.</xs:documentation>
414
+ </xs:annotation>
415
+ </xs:element>
416
+ <xs:element name="brightpoint-order-number" type="xs:string">
417
+ <xs:annotation>
418
+ <xs:documentation xml:lang="en">This is the Order Number generated within the Brightpoint system, which can be used to reference orders within Brightpoint.</xs:documentation>
419
+ </xs:annotation>
420
+ </xs:element>
421
+ <xs:element name="order-reference" type="xs:string">
422
+ <xs:annotation>
423
+ <xs:documentation xml:lang="en">This is the Order Reference. This is a pass-through information.</xs:documentation>
424
+ </xs:annotation>
425
+ </xs:element>
426
+ <xs:element name="order-sub-total" type="xs:decimal">
427
+ <xs:annotation>
428
+ <xs:documentation xml:lang="en">Sub-total amount for the order. This is pass-through information. </xs:documentation>
429
+ </xs:annotation>
430
+ </xs:element>
431
+ <xs:element name="order-discount" type="xs:decimal">
432
+ <xs:annotation>
433
+ <xs:documentation xml:lang="en">Discounted amount on the order. This is pass-through information. </xs:documentation>
434
+ </xs:annotation>
435
+ </xs:element>
436
+ <xs:element name="order-tax1" type="xs:decimal">
437
+ <xs:annotation>
438
+ <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>
439
+ </xs:annotation>
440
+ </xs:element>
441
+ <xs:element name="order-tax2" nillable="true" type="xs:decimal">
442
+ <xs:annotation>
443
+ <xs:documentation xml:lang="en">Integration specific second tax field. This is pass-through information.</xs:documentation>
444
+ </xs:annotation>
445
+ </xs:element>
446
+ <xs:element name="order-tax3" nillable="true" type="xs:decimal">
447
+ <xs:annotation>
448
+ <xs:documentation xml:lang="en">Integration specific third tax field. This is pass-through information.</xs:documentation>
449
+ </xs:annotation>
450
+ </xs:element>
451
+ <xs:element name="order-shipment-charge" type="xs:decimal">
452
+ <xs:annotation>
453
+ <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>
454
+ </xs:annotation>
455
+ </xs:element>
456
+ <xs:element name="order-total-net" type="xs:decimal">
457
+ <xs:annotation>
458
+ <xs:documentation xml:lang="en">Net total on Order. This is pass-through information. </xs:documentation>
459
+ </xs:annotation>
460
+ </xs:element>
461
+ <xs:element name="order-type" nillable="true" type="xs:string">
462
+ <xs:annotation>
463
+ <xs:documentation xml:lang="en">Order Type on Brightpoint's system.</xs:documentation>
464
+ </xs:annotation>
465
+ </xs:element>
466
+ <xs:element default="N" final="#all" name="gift-flag">
467
+ <xs:annotation>
468
+ <xs:documentation xml:lang="en">Flag to determine if the product is being shipped as a gift. Y: Yes; N: No. This is pass-through information.
469
+ </xs:documentation>
470
+ </xs:annotation>
471
+ <xs:simpleType>
472
+ <xs:restriction base="xs:string">
473
+ <xs:enumeration value="Y"/>
474
+ <xs:enumeration value="N"/>
475
+ </xs:restriction>
476
+ </xs:simpleType>
477
+ </xs:element>
478
+ <xs:element name="detail">
479
+ <xs:annotation>
480
+ <xs:documentation xml:lang="en">Detail tag of business related information in all XML Documents.</xs:documentation>
481
+ </xs:annotation>
482
+ <xs:complexType>
483
+ <xs:sequence>
484
+ <xs:element ref="line-item" minOccurs="0" maxOccurs="unbounded"/>
485
+ </xs:sequence>
486
+ </xs:complexType>
487
+ </xs:element>
488
+ <xs:element name="line-item">
489
+ <xs:complexType>
490
+ <xs:sequence>
491
+ <xs:element ref="line-no" minOccurs="1" maxOccurs="1"/>
492
+ <xs:element ref="line-reference" minOccurs="0" maxOccurs="1"/>
493
+ <xs:element ref="brightpoint-line-no" minOccurs="1" maxOccurs="1"/>
494
+ <xs:element ref="item-code" minOccurs="1" maxOccurs="1"/>
495
+ <xs:element ref="universal-product-code" minOccurs="0" maxOccurs="1"/>
496
+ <xs:element ref="product-name" minOccurs="0" maxOccurs="1"/>
497
+ <xs:element ref="quantity" minOccurs="1" maxOccurs="1"/>
498
+ <xs:element ref="backorder-quantity" minOccurs="0" maxOccurs="1"/>
499
+ <xs:element ref="unit-of-measure" minOccurs="0" maxOccurs="1"/>
500
+ <xs:element ref="serial-numbers" minOccurs="0" maxOccurs="1"/>
501
+ <xs:element ref="market-id" minOccurs="0" maxOccurs="1"/>
502
+ <xs:element ref="line-status" minOccurs="1" maxOccurs="1"/>
503
+ <xs:element ref="comments" minOccurs="0" maxOccurs="1"/>
504
+ <xs:element ref="customer-order-date" minOccurs="0" maxOccurs="1"/>
505
+ <xs:element ref="base-price" minOccurs="0" maxOccurs="1"/>
506
+ <xs:element ref="line-discount" minOccurs="0" maxOccurs="1"/>
507
+ <xs:element ref="line-tax1" minOccurs="0" maxOccurs="1"/>
508
+ <xs:element ref="line-tax2" minOccurs="0" maxOccurs="1"/>
509
+ <xs:element ref="line-tax3" minOccurs="0" maxOccurs="1"/>
510
+ <xs:element ref="special-message" minOccurs="0" maxOccurs="1"/>
511
+ </xs:sequence>
512
+ </xs:complexType>
513
+ </xs:element>
514
+ <xs:element name="line-no" type="xs:string">
515
+ <xs:annotation>
516
+ <xs:documentation xml:lang="en">Line Number at the detail level in customer's system.</xs:documentation>
517
+ </xs:annotation>
518
+ </xs:element>
519
+ <xs:element name="line-reference" type="xs:string">
520
+ <xs:annotation>
521
+ <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>
522
+ </xs:annotation>
523
+ </xs:element>
524
+ <xs:element name="brightpoint-line-no" type="xs:string">
525
+ <xs:annotation>
526
+ <xs:documentation xml:lang="en">Line Number at the detail level in Brightpoint's system.</xs:documentation>
527
+ </xs:annotation>
528
+ </xs:element>
529
+ <xs:element name="item-code" type="xs:string">
530
+ <xs:annotation>
531
+ <xs:documentation xml:lang="en">Item Code for the product on Brightpoint's system.</xs:documentation>
532
+ </xs:annotation>
533
+ </xs:element>
534
+ <xs:element name="universal-product-code" nillable="true" type="xs:string">
535
+ <xs:annotation>
536
+ <xs:documentation xml:lang="en">Universal Product Code.</xs:documentation>
537
+ </xs:annotation>
538
+ </xs:element>
539
+ <xs:element name="product-name" type="xs:string">
540
+ <xs:annotation>
541
+ <xs:documentation xml:lang="en">The Product Name in Brightpoint's system.</xs:documentation>
542
+ </xs:annotation>
543
+ </xs:element>
544
+ <xs:element name="quantity" type="xs:decimal">
545
+ <xs:annotation>
546
+ <xs:documentation xml:lang="en">Number of units of product ordered.</xs:documentation>
547
+ </xs:annotation>
548
+ </xs:element>
549
+ <xs:element name="backorder-quantity" type="xs:decimal">
550
+ <xs:annotation>
551
+ <xs:documentation xml:lang="en">Number of units on back order out of the total units ordered.</xs:documentation>
552
+ </xs:annotation>
553
+ </xs:element>
554
+ <xs:element name="unit-of-measure" type="xs:string">
555
+ <xs:annotation>
556
+ <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.</xs:documentation>
557
+ </xs:annotation>
558
+ </xs:element>
559
+ <xs:element name="serial-numbers">
560
+ <xs:annotation>
561
+ <xs:documentation xml:lang="en">This element contains a list of serialized-data elements if the product that is being requested is serialized.</xs:documentation>
562
+ </xs:annotation>
563
+ <xs:complexType>
564
+ <xs:sequence>
565
+ <xs:element ref="sid" minOccurs="0" maxOccurs="1"/>
566
+ <xs:element ref="esn" minOccurs="0" maxOccurs="1"/>
567
+ <xs:element ref="min" minOccurs="0" maxOccurs="1"/>
568
+ <xs:element ref="mdn" minOccurs="0" maxOccurs="1"/>
569
+ <xs:element ref="irdb" minOccurs="0" maxOccurs="1"/>
570
+ <xs:element ref="imei" minOccurs="0" maxOccurs="1"/>
571
+ </xs:sequence>
572
+ </xs:complexType>
573
+ </xs:element>
574
+ <xs:element name="min" type="xs:string">
575
+ <xs:annotation>
576
+ <xs:documentation xml:lang="en">MIN for the device</xs:documentation>
577
+ </xs:annotation>
578
+ </xs:element>
579
+ <xs:element name="sid" type="xs:string">
580
+ <xs:annotation>
581
+ <xs:documentation xml:lang="en">SID for the device; going forward, this should only be populated in the serial-numbers segment. It is still outside of that segment for
582
+ backwards compatibility. The change to have this within the serial-numbers is introduced since December 2008.</xs:documentation>
583
+ </xs:annotation>
584
+ </xs:element>
585
+ <xs:element name="mdn" type="xs:string">
586
+ <xs:annotation>
587
+ <xs:documentation xml:lang="en">MDN for the device</xs:documentation>
588
+ </xs:annotation>
589
+ </xs:element>
590
+ <xs:element name="esn" type="xs:string">
591
+ <xs:annotation>
592
+ <xs:documentation xml:lang="en">ESN for the device</xs:documentation>
593
+ </xs:annotation>
594
+ </xs:element>
595
+ <xs:element name="irdb" type="xs:string">
596
+ <xs:annotation>
597
+ <xs:documentation xml:lang="en">IRDB for the device</xs:documentation>
598
+ </xs:annotation>
599
+ </xs:element>
600
+ <xs:element name="imei" type="xs:string">
601
+ <xs:annotation>
602
+ <xs:documentation xml:lang="en">IMEI for the device</xs:documentation>
603
+ </xs:annotation>
604
+ </xs:element>
605
+ <xs:element name="market-id" type="xs:string">
606
+ <xs:annotation>
607
+ <xs:documentation xml:lang="en">The customer-market-id associated with the line in the customer's system. This is used to tie the order with the customer's system. This is pass-through information.</xs:documentation>
608
+ </xs:annotation>
609
+ </xs:element>
610
+ <xs:element name="line-status" type="xs:string">
611
+ <xs:annotation>
612
+ <xs:documentation xml:lang="en">The status of the line within Brightpoint's system.</xs:documentation>
613
+ </xs:annotation>
614
+ </xs:element>
615
+ <xs:element name="create-date" type="xs:string">
616
+ <xs:annotation>
617
+ <xs:documentation xml:lang="en">Date on which order was created. In CCYYMMDD.</xs:documentation>
618
+ </xs:annotation>
619
+ </xs:element>
620
+ <xs:element name="base-price" type="xs:decimal">
621
+ <xs:annotation>
622
+ <xs:documentation xml:lang="en">Base price of line item.</xs:documentation>
623
+ </xs:annotation>
624
+ </xs:element>
625
+ <xs:element name="line-discount" type="xs:decimal">
626
+ <xs:annotation>
627
+ <xs:documentation xml:lang="en">Discount on Line Item. This is pass-through information.</xs:documentation>
628
+ </xs:annotation>
629
+ </xs:element>
630
+ <xs:element name="line-tax1" nillable="true" type="xs:decimal">
631
+ <xs:annotation>
632
+ <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>
633
+ </xs:annotation>
634
+ </xs:element>
635
+ <xs:element name="line-tax2" nillable="true" type="xs:decimal">
636
+ <xs:annotation>
637
+ <xs:documentation xml:lang="en">Integration specific second tax field for line item. This is pass-through information.</xs:documentation>
638
+ </xs:annotation>
639
+ </xs:element>
640
+ <xs:element name="line-tax3" nillable="true" type="xs:decimal">
641
+ <xs:annotation>
642
+ <xs:documentation xml:lang="en">Integration specific third tax field for line item. This is pass-through information.</xs:documentation>
643
+ </xs:annotation>
644
+ </xs:element>
645
+ <xs:element name="special-message">
646
+ <xs:annotation>
647
+ <xs:documentation>Cistomer specific special message</xs:documentation>
648
+ </xs:annotation>
649
+ <xs:complexType>
650
+ <xs:sequence>
651
+ <xs:element ref="special-message1" minOccurs="0" maxOccurs="1"/>
652
+ <xs:element ref="special-message2" minOccurs="0" maxOccurs="1"/>
653
+ <xs:element ref="special-message3" minOccurs="0" maxOccurs="1"/>
654
+ <xs:element ref="special-message4" minOccurs="0" maxOccurs="1"/>
655
+ <xs:element ref="special-message5" minOccurs="0" maxOccurs="1"/>
656
+ </xs:sequence>
657
+ </xs:complexType>
658
+ </xs:element>
659
+ <xs:element name="special-message1" type="xs:string">
660
+ <xs:annotation>
661
+ <xs:documentation xml:lang="en">Special Message 1.</xs:documentation>
662
+ </xs:annotation>
663
+ </xs:element>
664
+ <xs:element name="special-message2" type="xs:string">
665
+ <xs:annotation>
666
+ <xs:documentation xml:lang="en">Special Message 2.</xs:documentation>
667
+ </xs:annotation>
668
+ </xs:element>
669
+ <xs:element name="special-message3" type="xs:string">
670
+ <xs:annotation>
671
+ <xs:documentation xml:lang="en">Special Message 3.</xs:documentation>
672
+ </xs:annotation>
673
+ </xs:element>
674
+ <xs:element name="special-message4" type="xs:string">
675
+ <xs:annotation>
676
+ <xs:documentation xml:lang="en">Special Message 4.</xs:documentation>
677
+ </xs:annotation>
678
+ </xs:element>
679
+ <xs:element name="special-message5" type="xs:string">
680
+ <xs:annotation>
681
+ <xs:documentation xml:lang="en">Special Message 5.</xs:documentation>
682
+ </xs:annotation>
683
+ </xs:element>
684
+ <xs:element name="transactionInfo">
685
+ <xs:complexType>
686
+ <xs:sequence>
687
+ <xs:element ref="eventID" minOccurs="1" maxOccurs="1"/>
688
+ </xs:sequence>
689
+ </xs:complexType>
690
+ </xs:element>
691
+ <xs:element name="eventID" type="xs:string">
692
+ <xs:annotation>
693
+ <xs:documentation xml:lang="en">Event ID from the customer's system.</xs:documentation>
694
+ </xs:annotation>
695
+ </xs:element>
696
+ </xs:schema>