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,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>