Ingram Micro Purchase Order v1 Webhook enables Vendors to:

  • Receive purchase orders in real-time by subscribing to the webhook.
  • Reduce manual purchase order submission.
  • Allows for immediate HTTP acknowledgement of receipt.

 

Notification Event Event code Sub-event code Description
Purchase Order Webhook IM::vendor_po IM::vendor_po (v1) Purchase Order Webhook

 

New Order Data Parameters

Data element Description Type/Length Constraints Capture Code
topic The main purpose/action of this notification example: vendors/purchaseorders string required  
event Indicates the occurrence of a purchase order being created ENUM {im::vendorpocreate} required  
eventTimeStamp The date and time the event occurred in UTC format string required  
eventid Unique identification that corresponds to this event string required  
resource This is the array that contains all the objects and new purchase order information array required  
resource/eventType The kind of purchase order being made ENUM {im::new_purchaseorder} required  
resource/ingramPurchaseOrderNumber Ingram Micro’s Purchase Order number to the vendor string required  
resource/ingramPurchaseOrderDate Ingram Micro’s purchase order date and timestamp. The date is in UTC format corresponding to the date purchase order was created in Ingram Micro'\'s system. string required  
resource/resellerOrderNumber Reseller Order number string required  
resource/orderType The order type. One of: im::government, im::educational, im::commercial, im::consumer ENUM{im::government, im::educational, im::commercial, im::consumer} required, default = im::commercial B: (Type of Order Flag)
resource/vendorQuoteNumber Reference number for the quote provided from the vendor to the buyer string optional I: (Quote Number)
resource/paymentTerms The payment terms of the order. (ex: 30 days) ENUM { 30, 90} required  
resource/currencyCode The 3-digit ISO currency code used for the entire order ENUM{ USD, AUD, EUR, CAD, GBP} required  
resource/orderTotal Total order amount/price Float required  
resource/notes Order Comments/Notes/Instructions string optional  
resource/dpasRating End user government office designation to be used for prioritization and fulfillment purposes. DX rating by Department of Defense is the highest rating/designation, making the order top priority. DO signifies any other gov offices at the US federal government. string optional  
resource/dpasProgramId Identifies the actual agency that signed off on the DPAS priority. string optional  
buyerInfo The address and contact information for the buyer. object required  
buyerInfo/billToPartnerId The ID references the partner's address in the vendor's system for billing. string required  
buyerInfo/companyName Company name of the buyer string required  
buyerInfo/contact Sales rep contact, contact name of buyer string required  
buyerInfo/addressLine1 Buyer street address string required  
buyerInfo/addressLine2 Buyer P.O.Box, etc string optional  
buyerInfo/addressLine3 Buyer address line 3, any additional address details string optional  
buyerInfo/city Buyer’s city string required  
buyerInfo/state Buyer’s state string required  
buyerInfo/postalCode Contact’s zipcode or Postal Code string required  
buyerInfo/countrycode The buyer's two-character ISO country code ENUM{ US, AU, CA} required  
buyerInfo/phoneNumber Contact phone number string required  
buyerInfo/email Contact email or generic mailbox string required  
resellerInfo Object containing reseller address and contact information object required  
resellerInfo/vendorResellerid Vendor reseller id string required A: (Vendor Acct # for Reseller)
resellerInfo/companyName Reseller company name string required  
resellerInfo/contact Reseller contact name string required  
resellerInfo/addressLine1 Reseller’s street address string optional  
resellerInfo/addressLine2 Reseller’s P.O.box, Building Number, etc. string optional  
resellerInfo/addressLine3 Additional reseller address information on line 3 string optional  
resellerInfo/city Reseller’s city string optional  
resellerInfo/state Reseller’s state string optional  
resellerInfo/postalCode Reseller’s postal/zipcode string optional  
resellerInfo/countryCode The reseller's two-character ISO country code. ENUM{ US, AU, CA} optional  
resellerInfo/phoneNumber Reseller’s phone number string required  
resellerInfo/email Reseller’s email address string required T: (Reseller Email Address)
endUserInfo This is the object containing end user contact and address information. The end user is the customer receiving the final product from the reseller/vendor. object required  
endUserInfo/vendorEndUserId The ID that references the end user/customer's address information in the vendor's system. string optional M: (Key Identifier)
endUserInfo/companyName End user company name string required  
endUserInfo/contact End user contact name string required  
endUserInfo/contact End user contact name string required  
endUserInfo/addressLine1 End user street address string required  
endUserInfo/addressLine2 End user P.O. Box, Building Number, etc. string optional  
endUserInfo/addressLine3 Additional address information on line 3 string optional  
endUserInfo/city End user city string optional  
endUserInfo/state End user state string optional  
endUserInfo/postalCode End user postal/zipcode string optional  
endUserInfo/countryCode End user’s two-character ISO country code. ENUM{ US, AU, CA} optional  
endUserInfo/phoneNumber End user contact phone number string required  
endUserInfo/email End user email address string required S: (End User Email Address)
lines Object containing line item information such as vendor part information, prices, contract information, etc. object required  
lines/ingramLineNumber Ingram assigned line number that starts with 001 string required  
lines/vendorPartNumber The vendor part number for the line item string required  
lines/vendorPartDescription The vendor’s description for the part in their system string required  
lines/ingramPartNumber Unique Ingram Micro’s part number for the vendor string required  
lines/quantity The number of line items being ordered float required  
lines/quantityUom Unit of measure for the line item, describing how the quantity of the line items are divided. Example: each, license ENUM {“Each“, “License”} required  
lines/unitprice Ingram Micro’s agreed unit price of the line item Float required  
lines/UPCcode The UPC code for the line item. Consists of 12 numeric digits that are uniquely assigned to each trade item. string required  
lines/units The number of units for ordered for this particular item. float required  
lines/itemTotal Total price of this item times the quantity ordered. float required  
lines/endUserInfo Object within the lines object that provides the contact and address information of the end user receiving the order object required  
lines/endUserCompanyName End user company name string required  
lines/endUserContactName End user contact name string required  
lines/endUserPhoneNumber End user phone number string required  
lines/endUserEmail End user email information string required  
lines/extendedUnitPrice Total for this line item float required  
lines/specialBidNumber The line-level bid number provided to the reseller by the vendor for special pricing and discounts. Used to track the bid number where different line items have different bid numbers. Line-level bid numbers take precedence over header-level bid numbers. string optional D: (Special Pricing Number)
lines/secondaryBidNumber Vendor defined secondary bid number provided by customer string optional H: (Approval Number)
lines/lineNotes Object containing line Notes for this order[Repeating element] object optional  
lines/lineNotes/lineNote Additional line notes/comments string optional  
lines/hardwareId ID used for associating hardware with warranty string optional  
lines/serviceContract Service contract details for the line item example: new contract, renewing contract, etc. ENUM["im::new", "im::renewal"] required only if sku is service sku  
lines/serialNumber The serial number of the original SKU that is being renewed or being supported string optional  
lines/contractNumber Contract number for the service string optional  
lines/contractStartDate Contract start date in UTC format string optional C: (Contract Start Date)
lines/contractEndDate Contract end date in UTC format string optional E: (Contract End Date)
lines/contractDuration Duration of the contract in in months string optional L: (Length of Contract)
shipmentDetails Object containing shipping/package details related to this purchase order object required  
shipmentDetails/carrierCode Specific carrier code provided by the customer string required  
shipmentDetails/carrierService The type of delivery service for the designated shipment. example: FedEX Overnight ENUM required  
shipmentDetails/fobTerms FOB terms consist of the destination or origin of the order, and ownership and risk information during shipping ENUM required  
shipmentDetails/fobPaymentTerms The FOB payment terms includes information about who pays for freight. This payment can be either Ingram, Customer or the Vendor. ENUM required  
shipmentDetails/freightAccountNumber Customer provided freight account number. The freight account number is used to bill the shipping carrier directly from the reseller's account with the carrier. string optional F: (Freight account number)
shipmentDetails/requestedDeliverydate The requested delivery date of the shipment, if this date is provided, then the customer is NOT expecting the delivery prior to this date. The requested delivery date is in UTC timestamp format. Delivery date is not guaranteed. string optional  
shipmentDetails/shipmentDate The shipment date considered as promise date string optional  
shipmentDetails/shipComplete Specifies whether the shipment will be shipped only when all products are fulfilled. Default is No. boolean required (default N)  
shipmentDetails/shippingInstructions Object containing shipping instructions for this order[Repeating element] object optional  
shipmentDetails/shippingInstructions/ shippingInstruction Notes or instructions given to carriers used for delivering this order. Contains additional shipping information for carriers to complete the order as specified. string optional Z: (Shipping Instructions)
shipmentDetails/shipToInfo Object containing shipping address for this order object required  
shipmentDetails/shipToInfo/Contact Ship to / attention name string required  
shipmentDetails/shipToInfo/ companyName Ship to company name string required  
shipmentDetails/shipToInfo/addressLine1 Street Address that order will be shipped to string required  
shipmentDetails/shipToInfo/ addressLine2 Ship to building, PO box, apt number that the order will be delivered to string required  
shipmentDetails/shipToInfo/ addressLine3 Ship to additional address details string optional  
shipmentDetails/shipToInfo/city Ship to the city order should be delivered to string required  
shipmentDetails/shipToInfo/state Ship to state order should be delivered to string required  
shipmentDetails/shipToInfo/postalCode Ship to zipcode order should be delivered to string required  
shipmentDetails/shipToInfo/ countryCode 2-character ISO country code ENUM{ US, AU, CA} required  
shipmentDetails/shipToInfo/ phoneNumber Ship to contact phone number string required  
shipmentDetails/shipToInfo/email Ship to contact email address string optional  

 

Sample JSON payload


{
  "topic": "vendors-TC05-Postman",
  "event": "im::vendorpocreate",
  "eventTimeStamp": "2021-04-12T17:04:03",
  "eventid": "713b2090-97c9-4842-953c-92b5fad71122",
  "resource": [
      {
          "eventType": "im::new_purchaseorder",
          "ingramPurchaseOrderNumber": "po4386d",
          "ingramPurchaseOrderDate": "2021-02-03t08:54:39-07:00",
          "customerOrderNumber": "123456",
          "orderType": "im::commercial",
          "vendorQuoteNumber": "",
          "paymentTerms": "30",
          "currencyCode": "USD",
          "orderTotal": "400.90",
          "notes": "ForcePoint",
          "buyerInfo": {
              "billToPartnerId": "IN049025",
              "companyName": "IngramMicro",
              "contact": "Matthew Smith",
              "addressLine1": "123 michelson dr",
              "addressLine2": "",
              "addressLine3": "",
              "city": "Anaheim",
              "state": "CA",
              "postalCode": "92612",
              "countryCode": "US",
              "phoneNumber": "1231231234",
              "email": "mathhew@gmail.com"
          },
          "resellerInfo": {
              "vendorResellerId": "4654392202",
              "companyName": "Acme electronics",
              "contact": "Mike Maisal",
              "addressLine1": "123 mickey mouse road",
              "addressLine2": "",
              "addressLine3": "",
              "city": "Anaheim",
              "state": "CA",
              "postalCode": "94261",
              "countryCode": "US",
              "phoneNumber": "1875691222",
              "email": "Mike.Maisal@reseller.com"
          },
          "shipmentDetails": {
              "carrierCode": "",
              "freightAccountNumber": "",
              "requestedDeliveryDate": "",
              "shipComplete": "Y",
              "shippingInstructions":[
              {
            "shippingInstruction":"inst1"
              },
              {
            "shippingInstruction":"inst2"
              }
             ],
              "shipToInfo": {
                  "contact": "Mike Maisal",
                  "companyName": "Acme electronics",
                  "addressLine1": "123 mickey mouse road",
                  "addressLine2": "",
                  "addressLine3": "",
                  "city": "Anaheim",
                  "state": "CA",
                  "postalCode": "94261",
                  "countryCode": "US",
                  "phoneNumber": "1875691222",
                  "email": "Mike.Maisal@reseller.com"
              }
          },
          "endUserInfo": {
              "vendorEndUserId": "6785392202",
              "companyName": "ABC technologies",
              "contact": "John Tucker",
              "addressLine1": "123 night street",
              "addressLine2": "",
              "addressLine3": "",
              "city": "Anaheim",
              "state": "CA",
              "postalCode": "48201",
              "countryCode": "US",
              "phoneNumber": "1255471299",
              "email": "end.user@abc.com"
          },
          "lines": [
              {
                  "ingramLineNumber": "001",
                  "vendorPartNumber": "AM/A4018G-1YS",
                  "vendorPartDescription": "1YR ALLYCARE SUPPORT FOR AM/A4018G-1YS",
                  "ingramPartNumber": "6YQ517",
                  "quantity": "10",
                  "quantityUom": "Each",
                  "unitPrice": "10.00",
                  "extendedUnitPrice": "100.00",
                  "specialBidNumber": "",
                  "secondaryBidNumber": "",
                  "lineNotes":[{
                    "lineNote":"install site id 12345"
                },
                {
                    "lineNote":"install site id 87654"
                }],
                  "hardwareId": "",
                  "serviceContract": "im::renewal",
                  "serialNumber": "",
                  "contractNumber": "",
                  "contractStartDate": "",
                  "contractEndDate": "",
                  "contractDuration": "",
                  "endUserDetails": {
                      "endUserCompanyName": "ABC technologies",
                      "endUserContactName": "John Tucker",
                      "endUserPhoneNumber": "1255471299",
                      "endUseremail": "end.user@abc.com"
                  }
              }
          ]
      }
  ]
}