Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(VB.NET) Walmart v3 Ship Order LinesSee more Walmart v3 ExamplesUpdates the status of order lines to Shipped and trigger the charge to the customer. The response to a successful call contains the order with the shipped line items. For more information, see https://developer.walmart.com/api/us/mp/orders#operation/shippingUpdates
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As New Chilkat.Http Dim success As Boolean http.SetRequestHeader("WM_QOS.CORRELATION_ID","b3261d2d-028a-4ef7-8602-633c23200af6") http.SetRequestHeader("WM_SEC.ACCESS_TOKEN","eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....") http.SetRequestHeader("Accept","application/json") http.SetRequestHeader("WM_SVC.NAME","Walmart Marketplace") ' Send the following in the request body: ' { ' "orderShipment": { ' "orderLines": { ' "orderLine": [ ' { ' "lineNumber": "1", ' "intentToCancelOverride": false, ' "sellerOrderId": "92344", ' "orderLineStatuses": { ' "orderLineStatus": [ ' { ' "status": "Shipped", ' "statusQuantity": { ' "unitOfMeasurement": "EACH", ' "amount": "1" ' }, ' "trackingInfo": { ' "shipDateTime": 1580821866000, ' "carrierName": { ' "carrier": "UPS" ' }, ' "methodCode": "Standard", ' "trackingNumber": "22344", ' "trackingURL": "http://walmart/tracking/ups?&type=MP&seller_id=12345&promise_date=03/02/2020&dzip=92840&tracking_numbers=92345" ' }, ' "returnCenterAddress": { ' "name": "walmart", ' "address1": "walmart store 2", ' "city": "Huntsville", ' "state": "AL", ' "postalCode": "35805", ' "country": "USA", ' "dayPhone": "12344", ' "emailId": "walmart@walmart.com" ' } ' } ' ] ' } ' }, ' { ' "lineNumber": "2", ' "sellerOrderId": "92344", ' "orderLineStatuses": { ' "orderLineStatus": [ ' { ' "status": "Shipped", ' "statusQuantity": { ' "unitOfMeasurement": "EACH", ' "amount": "1" ' }, ' "trackingInfo": { ' "shipDateTime": 1580821866000, ' "carrierName": { ' "carrier": "FedEx" ' }, ' "methodCode": "Express", ' "trackingNumber": "22344", ' "trackingURL": "http://walmart/tracking/fedEx?&type=MP&seller_id=12345&promise_date=03/02/2020&dzip=92840&tracking_numbers=92344" ' }, ' "returnCenterAddress": { ' "name": "walmart", ' "address1": "walmart store 2", ' "city": "Huntsville", ' "state": "AL", ' "postalCode": "35805", ' "country": "USA", ' "dayPhone": "12344", ' "emailId": "walmart@walmart.com" ' } ' } ' ] ' } ' } ' ] ' } ' } ' } Dim json As New Chilkat.JsonObject Dim orderLineIndex As Integer = 0 Dim statusIndex As Integer = 0 json.I = orderLineIndex json.J = statusIndex json.UpdateString("orderShipment.orderLines.orderLine[i].lineNumber","1") json.UpdateBool("orderShipment.orderLines.orderLine[i].intentToCancelOverride",False) json.UpdateString("orderShipment.orderLines.orderLine[i].sellerOrderId","92344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].status","Shipped") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].statusQuantity.unitOfMeasurement","EACH") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].statusQuantity.amount","1") json.UpdateInt("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.shipDateTime",123) json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.carrierName.carrier","UPS") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.methodCode","Standard") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.trackingNumber","22344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.trackingURL","http://walmart/tracking/ups?&type=MP&seller_id=12345&promise_date=03/02/2020&dzip=92840&tracking_numbers=92345") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.name","walmart") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.address1","walmart store 2") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.city","Huntsville") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.state","AL") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.postalCode","35805") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.country","USA") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.dayPhone","12344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.emailId","walmart@walmart.com") orderLineIndex = orderLineIndex + 1 statusIndex = 0 json.I = orderLineIndex json.J = statusIndex json.UpdateString("orderShipment.orderLines.orderLine[i].lineNumber","2") json.UpdateString("orderShipment.orderLines.orderLine[i].sellerOrderId","92344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].status","Shipped") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].statusQuantity.unitOfMeasurement","EACH") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].statusQuantity.amount","1") json.UpdateInt("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.shipDateTime",123) json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.carrierName.carrier","FedEx") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.methodCode","Express") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.trackingNumber","22344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.trackingURL","http://walmart/tracking/fedEx?&type=MP&seller_id=12345&promise_date=03/02/2020&dzip=92840&tracking_numbers=92344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.name","walmart") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.address1","walmart store 2") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.city","Huntsville") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.state","AL") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.postalCode","35805") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.country","USA") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.dayPhone","12344") json.UpdateString("orderShipment.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.emailId","walmart@walmart.com") Dim resp As Chilkat.HttpResponse = http.PostJson3("https://api-gateway.walmart.com/v3/orders/{purchaseOrderId}/shipping","application/json",json) If (http.LastMethodSuccess = False) Then Debug.WriteLine(http.LastErrorText) Exit Sub End If Debug.WriteLine("Response status code: " & resp.StatusCode) resp.GetBodyJson(json) ' A sample JSON response: ' { ' "order": { ' "purchaseOrderId": "1234567891234", ' "customerOrderId": "9876543212345", ' "sellerOrderId": "13233454564657", ' "customerEmailId": "customer@walmartlabs.com", ' "orderDate": 1478284060000, ' "shippingInfo": { ' "phone": "6501234567", ' "estimatedDeliveryDate": 1479798000000, ' "estimatedShipDate": 1478674800000, ' "methodCode": "Value", ' "postalAddress": { ' "name": "Jane Doe", ' "address1": "123 Main street", ' "city": "Sunnyvale", ' "state": "CA", ' "postalCode": "94086", ' "country": "USA", ' "addressType": "OFFICE" ' } ' }, ' "orderLines": { ' "orderLine": [ ' { ' "lineNumber": "1", ' "item": { ' "productName": "Kenmore CF-1 or 20-86883 Canister Secondary Filter Generic 2 Pack", ' "sku": "wei-ASSET-675gku675" ' }, ' "charges": { ' "charge": [ ' { ' "chargeType": "PRODUCT", ' "chargeName": "ItemPrice", ' "chargeAmount": { ' "currency": "USD", ' "amount": 555 ' }, ' "tax": { ' "taxName": "Tax1", ' "taxAmount": { ' "currency": "USD", ' "amount": 48.56 ' } ' } ' } ' ] ' }, ' "orderLineQuantity": { ' "unitOfMeasurement": "EACH", ' "amount": "1" ' }, ' "statusDate": 1478297929000, ' "orderLineStatuses": { ' "orderLineStatus": [ ' { ' "status": "Shipped", ' "statusQuantity": { ' "unitOfMeasurement": "EACH", ' "amount": "1" ' }, ' "trackingInfo": { ' "shipDateTime": 1438163400000, ' "carrierName": { ' "carrier": "FedEx" ' }, ' "methodCode": "Value", ' "trackingNumber": "911001572321619861", ' "trackingURL": "http://www.fedex.com/Tracking?action=track=english=us=x=911001572321619861" ' }, ' "returnCenterAddress": { ' "name": "ABC", ' "address1": "123 Bridge street", ' "city": "Huntsville", ' "state": "AL", ' "postalCode": "35805", ' "country": "USA", ' "dayPhone": "6501234567", ' "emailId": "RCemailaddress@company.com" ' } ' } ' ] ' } ' } ' ] ' } ' } ' } json.EmitCompact = False Debug.WriteLine("Response JSON:") Debug.WriteLine(json.Emit()) ' Insert code here to load the above JSON into the json object. Dim lineNumber As String Dim ProductName As String Dim Sku As String Dim UnitOfMeasurement As String Dim Amount As String Dim statusDate As Integer Dim count_j As Integer Dim chargeType As String Dim chargeName As String Dim v_Currency As String Dim chargeAmountAmount As Integer Dim TaxName As String Dim TaxAmountCurrency As String Dim TaxAmountAmount As String Dim status As String Dim statusQuantityUnitOfMeasurement As String Dim statusQuantityAmount As String Dim ShipDateTime As Integer Dim Carrier As String Dim trackingInfoMethodCode As String Dim TrackingNumber As String Dim TrackingURL As String Dim returnCenterAddressName As String Dim returnCenterAddressAddress1 As String Dim returnCenterAddressCity As String Dim returnCenterAddressState As String Dim returnCenterAddressPostalCode As String Dim returnCenterAddressCountry As String Dim DayPhone As String Dim EmailId As String Dim PurchaseOrderId As String = json.StringOf("order.purchaseOrderId") Dim CustomerOrderId As String = json.StringOf("order.customerOrderId") Dim SellerOrderId As String = json.StringOf("order.sellerOrderId") Dim CustomerEmailId As String = json.StringOf("order.customerEmailId") Dim OrderDate As Integer = json.IntOf("order.orderDate") Dim Phone As String = json.StringOf("order.shippingInfo.phone") Dim EstimatedDeliveryDate As Integer = json.IntOf("order.shippingInfo.estimatedDeliveryDate") Dim EstimatedShipDate As Integer = json.IntOf("order.shippingInfo.estimatedShipDate") Dim MethodCode As String = json.StringOf("order.shippingInfo.methodCode") Dim Name As String = json.StringOf("order.shippingInfo.postalAddress.name") Dim Address1 As String = json.StringOf("order.shippingInfo.postalAddress.address1") Dim City As String = json.StringOf("order.shippingInfo.postalAddress.city") Dim State As String = json.StringOf("order.shippingInfo.postalAddress.state") Dim PostalCode As String = json.StringOf("order.shippingInfo.postalAddress.postalCode") Dim Country As String = json.StringOf("order.shippingInfo.postalAddress.country") Dim AddressType As String = json.StringOf("order.shippingInfo.postalAddress.addressType") Dim i As Integer = 0 Dim j As Integer = 0 Dim count_i As Integer = json.SizeOfArray("order.orderLines.orderLine") While i < count_i json.I = i lineNumber = json.StringOf("order.orderLines.orderLine[i].lineNumber") ProductName = json.StringOf("order.orderLines.orderLine[i].item.productName") Sku = json.StringOf("order.orderLines.orderLine[i].item.sku") UnitOfMeasurement = json.StringOf("order.orderLines.orderLine[i].orderLineQuantity.unitOfMeasurement") Amount = json.StringOf("order.orderLines.orderLine[i].orderLineQuantity.amount") statusDate = json.IntOf("order.orderLines.orderLine[i].statusDate") j = 0 count_j = json.SizeOfArray("order.orderLines.orderLine[i].charges.charge") While j < count_j json.J = j chargeType = json.StringOf("order.orderLines.orderLine[i].charges.charge[j].chargeType") chargeName = json.StringOf("order.orderLines.orderLine[i].charges.charge[j].chargeName") v_Currency = json.StringOf("order.orderLines.orderLine[i].charges.charge[j].chargeAmount.currency") chargeAmountAmount = json.IntOf("order.orderLines.orderLine[i].charges.charge[j].chargeAmount.amount") TaxName = json.StringOf("order.orderLines.orderLine[i].charges.charge[j].tax.taxName") TaxAmountCurrency = json.StringOf("order.orderLines.orderLine[i].charges.charge[j].tax.taxAmount.currency") TaxAmountAmount = json.StringOf("order.orderLines.orderLine[i].charges.charge[j].tax.taxAmount.amount") j = j + 1 End While j = 0 count_j = json.SizeOfArray("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus") While j < count_j json.J = j status = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].status") statusQuantityUnitOfMeasurement = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].statusQuantity.unitOfMeasurement") statusQuantityAmount = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].statusQuantity.amount") ShipDateTime = json.IntOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.shipDateTime") Carrier = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.carrierName.carrier") trackingInfoMethodCode = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.methodCode") TrackingNumber = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.trackingNumber") TrackingURL = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].trackingInfo.trackingURL") returnCenterAddressName = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.name") returnCenterAddressAddress1 = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.address1") returnCenterAddressCity = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.city") returnCenterAddressState = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.state") returnCenterAddressPostalCode = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.postalCode") returnCenterAddressCountry = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.country") DayPhone = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.dayPhone") EmailId = json.StringOf("order.orderLines.orderLine[i].orderLineStatuses.orderLineStatus[j].returnCenterAddress.emailId") j = j + 1 End While i = i + 1 End While |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.