Sample code for 30+ languages & platforms
SQL Server Requires Chilkat v11.0.0+

Ecwid - Search Orders

See more Ecwid Examples

Search or filter orders in an Ecwid store. The response provides full details of the found orders.

Chilkat SQL Server Downloads

SQL Server
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @success int
    SELECT @success = 0

    --  This example assumes the Chilkat API to have been previously unlocked.
    --  See Global Unlock Sample for sample code.

    DECLARE @http int
    EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    --  Implements the following CURL command:

    --  curl --request GET \
    --       --url 'https://app.ecwid.com/api/v3/storeId/orders?token=token' \
    --       --header 'Accept: application/json'

    --  Use the following online tool to generate HTTP code from a CURL command
    --  Convert a cURL Command to HTTP Source Code

    --  Load the access token previously obtained in Ecwid Get Access Token
    DECLARE @jsonToken int
    EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jsonToken OUT

    EXEC sp_OAMethod @jsonToken, 'LoadFile', @success OUT, 'qa_data/tokens/ecwid.json'

    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Accept', 'application/json'

    DECLARE @params int
    EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @params OUT

    EXEC sp_OAMethod @params, 'UpdateInt', @success OUT, 'limit', 100
    EXEC sp_OAMethod @params, 'UpdateString', @success OUT, 'email', 'joe@example.com'
    EXEC sp_OAMethod @jsonToken, 'StringOf', @sTmp0 OUT, 'access_token'
    EXEC sp_OAMethod @params, 'UpdateString', @success OUT, 'token', @sTmp0

    DECLARE @resp int
    EXEC @hr = sp_OACreate 'Chilkat.HttpResponse', @resp OUT

    EXEC sp_OAMethod @http, 'HttpParams', @success OUT, 'GET', 'https://app.ecwid.com/api/v3/storeId/orders', @params, @resp
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @http
        EXEC @hr = sp_OADestroy @jsonToken
        EXEC @hr = sp_OADestroy @params
        EXEC @hr = sp_OADestroy @resp
        RETURN
      END

    DECLARE @sbResponseBody int
    EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbResponseBody OUT

    EXEC sp_OAMethod @resp, 'GetBodySb', @success OUT, @sbResponseBody
    DECLARE @jResp int
    EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jResp OUT

    EXEC sp_OAMethod @jResp, 'LoadSb', @success OUT, @sbResponseBody
    EXEC sp_OASetProperty @jResp, 'EmitCompact', 0


    PRINT 'Response Body:'
    EXEC sp_OAMethod @jResp, 'Emit', @sTmp0 OUT
    PRINT @sTmp0

    DECLARE @respStatusCode int
    EXEC sp_OAGetProperty @resp, 'StatusCode', @respStatusCode OUT


    PRINT 'Response Status Code = ' + @respStatusCode
    IF @respStatusCode <> 200
      BEGIN

        PRINT 'Failed.'
        EXEC @hr = sp_OADestroy @http
        EXEC @hr = sp_OADestroy @jsonToken
        EXEC @hr = sp_OADestroy @params
        EXEC @hr = sp_OADestroy @resp
        EXEC @hr = sp_OADestroy @sbResponseBody
        EXEC @hr = sp_OADestroy @jResp
        RETURN
      END

    --  Sample JSON response:
    --  (Sample code for parsing the JSON response is shown below)

    --  {
    --    "total": 1,
    --    "count": 1,
    --    "offset": 0,
    --    "limit": 100,
    --    "items": [
    --      {
    --        "id": "XJ12H",
    --        "subtotal": 1076.64,
    --        "total": 2014.97,
    --        "giftCardRedemption": 2.23,
    --        "totalBeforeGiftCardRedemption": 2.23,
    --        "giftCardDoubleSpending": false,
    --        "usdTotal": 2014.97,
    --        "tax": 488.48,
    --        "paymentMethod": "Credit or debit card (Mollie)",
    --        "paymentStatus": "PARTIALLY_REFUNDED",
    --        "fulfillmentStatus": "DELIVERED",
    --        "vendorOrderNumber": "XJ12H",
    --        "orderNumber": 1082727626,
    --        "refererUrl": "https://mdemo.ecwid.com/",
    --        "globalReferer": "https://my.ecwid.com/",
    --        "createDate": "2018-05-31 15:08:36 +0000",
    --        "updateDate": "2018-05-31 15:09:35 +0000",
    --        "createTimestamp": 1527779316,
    --        "updateTimestamp": 1527779375,
    --        "hidden": false,
    --        "orderComments": "Test order comments",
    --        "privateAdminNotes": "Must be delivered till Sunday.",
    --        "email": "mscott@gmail.com",
    --        "ipAddress": "123.431.234.243",
    --        "customerId": 40201284,
    --        "customerGroupId": 12345,
    --        "customerGroup": "Gold",
    --        "customerTaxExempt": false,
    --        "customerTaxId": "",
    --        "customerTaxIdValid": false,
    --        "reversedTaxApplied": false,
    --        "discount": 4,
    --        "couponDiscount": 22,
    --        "volumeDiscount": 4,
    --        "membershipBasedDiscount": 0,
    --        "totalAndMembershipBasedDiscount": 0,
    --        "customDiscount": [
    --        ],
    --        "discountCoupon": {
    --          "id": 29567026,
    --          "name": "API Testing",
    --          "code": "APITESTING",
    --          "discountType": "ABS",
    --          "status": "ACTIVE",
    --          "discount": 22,
    --          "launchDate": "2018-05-24 20:00:00 +0000",
    --          "usesLimit": "UNLIMITED",
    --          "applicationLimit": "UNLIMITED",
    --          "creationDate": "2018-05-31 15:08:33 +0000",
    --          "updateDate": "2018-05-24 13:40:32 +0000",
    --          "orderCount": 0
    --        },
    --        "discountInfo": [
    --          {
    --            "value": 4,
    --            "type": "ABS",
    --            "base": "ON_TOTAL",
    --            "orderTotal": 1
    --          }
    --        ],
    --        "items": [
    --          {
    --            "id": 140273658,
    --            "productId": 66722487,
    --            "categoryId": 19563207,
    --            "price": 1060,
    --            "productPrice": 1000,
    --            "sku": "ABCA-IAC",
    --            "quantity": 1,
    --            "shortDescription": "",
    --            "tax": 331.01,
    --            "shipping": 0,
    --            "quantityInStock": 0,
    --            "name": "iMac",
    --            "isShippingRequired": true,
    --            "weight": 0,
    --            "trackQuantity": false,
    --            "fixedShippingRateOnly": false,
    --            "imageUrl": "https://ecwid-images-ru.gcdn.co/images/5035009/391870914.jpg",
    --            "smallThumbnailUrl": "https://ecwid-images-ru.gcdn.co/images/5035009/650638292.jpg",
    --            "hdThumbnailUrl": "https://ecwid-images-ru.gcdn.co/images/5035009/650638293.jpg",
    --            "fixedShippingRate": 0,
    --            "digital": false,
    --            "couponApplied": true,
    --            "selectedOptions": [
    --              {
    --                "name": "Price-Optimizer",
    --                "value": "6",
    --                "valuesArray": [
    --                  "6"
    --                ],
    --                "selections": [
    --                  {
    --                    "selectionTitle": "6",
    --                    "selectionModifier": 6,
    --                    "selectionModifierType": "PERCENT"
    --                  }
    --                ],
    --                "type": "CHOICE"
    --              }
    --            ],
    --            "taxes": [
    --              {
    --                "name": "State tax",
    --                "value": 12,
    --                "total": 124.13,
    --                "taxOnDiscountedSubtotal": 124.13,
    --                "taxOnShipping": 0,
    --                "includeInPrice": false
    --              },
    --              {
    --                "name": "TVA",
    --                "value": 20,
    --                "total": 206.88,
    --                "taxOnDiscountedSubtotal": 206.88,
    --                "taxOnShipping": 0,
    --                "includeInPrice": true
    --              }
    --            ],
    --            "dimensions": {
    --              "length": 0,
    --              "width": 0,
    --              "height": 0
    --            },
    --            "couponAmount": 21.66,
    --            "discounts": [
    --              {
    --                "discountInfo": {
    --                  "value": 4,
    --                  "type": "ABS",
    --                  "base": "ON_TOTAL",
    --                  "orderTotal": 1
    --                },
    --                "total": 3.94
    --              }
    --            ]
    --          },
    --          {
    --            "id": 140273659,
    --            "productId": 66821181,
    --            "categoryId": 0,
    --            "price": 16.64,
    --            "productPrice": 16,
    --            "sku": "001001",
    --            "quantity": 1,
    --            "shortDescription": "This sturdy white, glossy ceramic mug is an essential to your cupboard. This brawny version of ceramic mugs shows it’s ...",
    --            "tax": 157.47,
    --            "shipping": 471.85,
    --            "quantityInStock": 0,
    --            "name": "Mug",
    --            "isShippingRequired": true,
    --            "weight": 0.4,
    --            "trackQuantity": false,
    --            "fixedShippingRateOnly": false,
    --            "imageUrl": "https://ecwid-images-ru.gcdn.co/images/5035009/389900000.jpg",
    --            "smallThumbnailUrl": "https://ecwid-images-ru.gcdn.co/images/5035009/475772545.jpg",
    --            "hdThumbnailUrl": "https://ecwid-images-ru.gcdn.co/images/5035009/408631478.jpg",
    --            "fixedShippingRate": 0,
    --            "digital": false,
    --            "couponApplied": true,
    --            "selectedOptions": [
    --              {
    --                "name": "Color",
    --                "value": "White",
    --                "valuesArray": [
    --                  "White"
    --                ],
    --                "selections": [
    --                  {
    --                    "selectionTitle": "White",
    --                    "selectionModifier": 0,
    --                    "selectionModifierType": "ABSOLUTE"
    --                  }
    --                ],
    --                "type": "CHOICE"
    --              },
    --              {
    --                "name": "Size",
    --                "value": "11oz",
    --                "valuesArray": [
    --                  "11oz"
    --                ],
    --                "selections": [
    --                  {
    --                    "selectionTitle": "11oz",
    --                    "selectionModifier": 0,
    --                    "selectionModifierType": "ABSOLUTE"
    --                  }
    --                ],
    --                "type": "CHOICE"
    --              },
    --              {
    --                "name": "Price-Optimizer",
    --                "value": "4",
    --                "valuesArray": [
    --                  "4"
    --                ],
    --                "selections": [
    --                  {
    --                    "selectionTitle": "4",
    --                    "selectionModifier": 4,
    --                    "selectionModifierType": "PERCENT"
    --                  }
    --                ],
    --                "type": "CHOICE"
    --              }
    --            ],
    --            "taxes": [
    --              {
    --                "name": "State tax",
    --                "value": 12,
    --                "total": 59.05,
    --                "taxOnDiscountedSubtotal": 1.95,
    --                "taxOnShipping": 57.1,
    --                "includeInPrice": false
    --              },
    --              {
    --                "name": "TVA",
    --                "value": 20,
    --                "total": 98.42,
    --                "taxOnDiscountedSubtotal": 3.25,
    --                "taxOnShipping": 95.17,
    --                "includeInPrice": true
    --              }
    --            ],
    --            "dimensions": {
    --              "length": 0,
    --              "width": 0,
    --              "height": 0
    --            },
    --            "couponAmount": 0.34,
    --            "discounts": [
    --              {
    --                "discountInfo": {
    --                  "value": 4,
    --                  "type": "ABS",
    --                  "base": "ON_TOTAL",
    --                  "orderTotal": 1
    --                },
    --                "total": 0.06
    --              }
    --            ]
    --          },
    --          {
    --            "subscriptionId": 123456,
    --            "recurringChargeSettings": {
    --              "recurringInterval": "month",
    --              "recurringIntervalCount": 1
    --            }
    --          }
    --        ],
    --        "refundedAmount": 3.5,
    --        "refunds": [
    --          {
    --            "date": "2017-09-12 10:12:56 +0000",
    --            "source": "CP",
    --            "reason": "Testing!",
    --            "amount": 3.5
    --          }
    --        ],
    --        "billingPerson": {
    --          "name": "Michael Scott",
    --          "companyName": "",
    --          "street": "555 Lackawanna Ave",
    --          "city": "Scranton",
    --          "countryCode": "US",
    --          "countryName": "United States",
    --          "postalCode": "18508",
    --          "stateOrProvinceCode": "PA",
    --          "stateOrProvinceName": "Pennsylvania",
    --          "phone": ""
    --        },
    --        "shippingPerson": {
    --          "name": "Michael Scott",
    --          "companyName": "",
    --          "street": "555 Lackawanna Ave",
    --          "city": "Scranton",
    --          "countryCode": "US",
    --          "countryName": "United States",
    --          "postalCode": "18508",
    --          "stateOrProvinceCode": "PA",
    --          "stateOrProvinceName": "Pennsylvania",
    --          "phone": ""
    --        },
    --        "shippingOption": {
    --          "shippingCarrierName": "Shipping app the-printful",
    --          "shippingMethodName": "USPS Priority Mail",
    --          "shippingRate": 471.85,
    --          "estimatedTransitTime": "1-3",
    --          "isPickup": false
    --        },
    --        "handlingFee": {
    --          "name": "Handling Fee",
    --          "value": 4,
    --          "description": ""
    --        },
    --        "predictedPackage": [
    --          {
    --            "length": 0,
    --            "width": 0,
    --            "height": 0,
    --            "weight": 0.4,
    --            "declaredValue": 1076.64
    --          }
    --        ],
    --        "shipments": [
    --          {
    --            "id": "5e79bd4f-9ebf-4ab8-b901-24c9b48b19eb",
    --            "created": "2020-04-23 19:13:43 +0000",
    --            "shipTo": {
    --              "name": "Michael Scott",
    --              "companyName": "",
    --              "street": "555 Lackawanna Ave",
    --              "city": "Scranton",
    --              "countryCode": "US",
    --              "countryName": "United States",
    --              "postalCode": "18508",
    --              "stateOrProvinceCode": "PA",
    --              "stateOrProvinceName": "Pennsylvania",
    --              "phone": ""
    --            },
    --            "shipFrom": {
    --              "companyName": "Roga Kopyty Inc",
    --              "street": "444 fff",
    --              "city": "New York",
    --              "countryCode": "US",
    --              "countryName": "United States",
    --              "postalCode": "10001",
    --              "stateOrProvinceCode": "NY",
    --              "stateOrProvinceName": "New York",
    --              "phone": "1011991919"
    --            },
    --            "parcel": {
    --              "weight": 0.5,
    --              "weightUnit": 'KILOGRAM',
    --              "width": 10,
    --              "height": 10,
    --              "length": 10,
    --              "dimensionUnit": 'CM'
    --            },
    --            "shippingService": {
    --              "carrier": 'USPS',
    --              "carrierName": 'Shipping,
    --              "carrierServiceName": "Priority Mail",
    --              "carrierServiceCode": "usps_priority"
    --            },
    --            "tracking": {
    --              "tracking_number": "9499907123456123456781",
    --              "tracking_url": "https://tools.usps.com/go/TrackConfirmAction_input?origTrackNum=9499907123456123456781",
    --              "estimatedDays": 3
    --            },
    --            "shippingLabel": {
    --              "label_url": "https://shippo-delivery.s3.amazonaws.com/70ae8117ee1749e393f249d5b77c45e0.pdf?Signature=vDw1ltcyGveVR1OQoUDdzC43BY8%3D&Expires=1437093830&AWSAccessKeyId=AKIAJTHP3LLFMYAWALIA",
    --              "commercial_invoice_url": ""
    --            }
    --          }
    --        ],
    --        "taxesOnShipping": [
    --          {
    --            "name": "State tax",
    --            "value": 12,
    --            "total": 57.1
    --          },
    --          {
    --            "name": "TVA",
    --            "value": 20,
    --            "total": 95.17
    --          }
    --        ],
    --        "paymentModule": "CUSTOM_PAYMENT_APP-mollie-pg",
    --        "additionalInfo": {
    --          "google_customer_id": "2008512504.1526280224"
    --        },
    --        "paymentParams": {},
    --        "orderExtraFields": [
    --          {
    --            "id": "lang",
    --            "value": "en",
    --            "customerInputType": "",
    --            "title": "",
    --            "orderDetailsDisplaySection": "",
    --            "orderBy": "1"
    --          },
    --          {
    --            "id": "askHowYouFoundUsApp",
    --            "value": "From a friend",
    --            "customerInputType": "SELECT",
    --            "title": "How did you hear about us?",
    --            "orderDetailsDisplaySection": "order_comments",
    --            "orderBy": "2"
    --          }
    --        ],
    --        "acceptMarketing": true,
    --        "refererId": "Amazon",
    --        "disableAllCustomerNotifications": false,
    --        "externalFulfillment": false,
    --        "pricesIncludeTax": false
    --      }
    --    ]
    --  }

    --  Sample code for parsing the JSON response...
    --  Use the following online tool to generate parsing code from sample JSON:
    --  Generate Parsing Code from JSON

    DECLARE @id nvarchar(4000)

    DECLARE @subtotal nvarchar(4000)

    DECLARE @total_str nvarchar(4000)

    DECLARE @giftCardRedemption nvarchar(4000)

    DECLARE @totalBeforeGiftCardRedemption nvarchar(4000)

    DECLARE @giftCardDoubleSpending int

    DECLARE @usdTotal nvarchar(4000)

    DECLARE @tax nvarchar(4000)

    DECLARE @paymentMethod nvarchar(4000)

    DECLARE @paymentStatus nvarchar(4000)

    DECLARE @fulfillmentStatus nvarchar(4000)

    DECLARE @vendorOrderNumber nvarchar(4000)

    DECLARE @orderNumber int

    DECLARE @refererUrl nvarchar(4000)

    DECLARE @globalReferer nvarchar(4000)

    DECLARE @createDate nvarchar(4000)

    DECLARE @updateDate nvarchar(4000)

    DECLARE @createTimestamp int

    DECLARE @updateTimestamp int

    DECLARE @hidden int

    DECLARE @orderComments nvarchar(4000)

    DECLARE @privateAdminNotes nvarchar(4000)

    DECLARE @email nvarchar(4000)

    DECLARE @ipAddress nvarchar(4000)

    DECLARE @customerId int

    DECLARE @customerGroupId int

    DECLARE @customerGroup nvarchar(4000)

    DECLARE @customerTaxExempt int

    DECLARE @customerTaxId nvarchar(4000)

    DECLARE @customerTaxIdValid int

    DECLARE @reversedTaxApplied int

    DECLARE @discount int

    DECLARE @couponDiscount int

    DECLARE @volumeDiscount int

    DECLARE @membershipBasedDiscount int

    DECLARE @totalAndMembershipBasedDiscount int

    DECLARE @discountCouponId int

    DECLARE @discountCouponName nvarchar(4000)

    DECLARE @discountCouponCode nvarchar(4000)

    DECLARE @discountCouponDiscountType nvarchar(4000)

    DECLARE @discountCouponStatus nvarchar(4000)

    DECLARE @discountCouponDiscount int

    DECLARE @discountCouponLaunchDate nvarchar(4000)

    DECLARE @discountCouponUsesLimit nvarchar(4000)

    DECLARE @discountCouponApplicationLimit nvarchar(4000)

    DECLARE @discountCouponCreationDate nvarchar(4000)

    DECLARE @discountCouponUpdateDate nvarchar(4000)

    DECLARE @discountCouponOrderCount int

    DECLARE @refundedAmount nvarchar(4000)

    DECLARE @billingPersonName nvarchar(4000)

    DECLARE @billingPersonCompanyName nvarchar(4000)

    DECLARE @billingPersonStreet nvarchar(4000)

    DECLARE @billingPersonCity nvarchar(4000)

    DECLARE @billingPersonCountryCode nvarchar(4000)

    DECLARE @billingPersonCountryName nvarchar(4000)

    DECLARE @billingPersonPostalCode nvarchar(4000)

    DECLARE @billingPersonStateOrProvinceCode nvarchar(4000)

    DECLARE @billingPersonStateOrProvinceName nvarchar(4000)

    DECLARE @billingPersonPhone nvarchar(4000)

    DECLARE @shippingPersonName nvarchar(4000)

    DECLARE @shippingPersonCompanyName nvarchar(4000)

    DECLARE @shippingPersonStreet nvarchar(4000)

    DECLARE @shippingPersonCity nvarchar(4000)

    DECLARE @shippingPersonCountryCode nvarchar(4000)

    DECLARE @shippingPersonCountryName nvarchar(4000)

    DECLARE @shippingPersonPostalCode nvarchar(4000)

    DECLARE @shippingPersonStateOrProvinceCode nvarchar(4000)

    DECLARE @shippingPersonStateOrProvinceName nvarchar(4000)

    DECLARE @shippingPersonPhone nvarchar(4000)

    DECLARE @shippingOptionShippingCarrierName nvarchar(4000)

    DECLARE @shippingOptionShippingMethodName nvarchar(4000)

    DECLARE @shippingOptionShippingRate nvarchar(4000)

    DECLARE @shippingOptionEstimatedTransitTime nvarchar(4000)

    DECLARE @shippingOptionIsPickup int

    DECLARE @handlingFeeName nvarchar(4000)

    DECLARE @handlingFeeValue int

    DECLARE @handlingFeeDescription nvarchar(4000)

    DECLARE @paymentModule nvarchar(4000)

    DECLARE @additionalInfoGoogle_customer_id nvarchar(4000)

    DECLARE @acceptMarketing int

    DECLARE @refererId nvarchar(4000)

    DECLARE @disableAllCustomerNotifications int

    DECLARE @externalFulfillment int

    DECLARE @pricesIncludeTax int

    DECLARE @j int

    DECLARE @count_j int

    DECLARE @value int

    DECLARE @v_type nvarchar(4000)

    DECLARE @base nvarchar(4000)

    DECLARE @orderTotal int

    DECLARE @id_int int

    DECLARE @productId int

    DECLARE @categoryId int

    DECLARE @price int

    DECLARE @productPrice int

    DECLARE @sku nvarchar(4000)

    DECLARE @quantity int

    DECLARE @shortDescription nvarchar(4000)

    DECLARE @shipping int

    DECLARE @quantityInStock int

    DECLARE @name nvarchar(4000)

    DECLARE @isShippingRequired int

    DECLARE @weight int

    DECLARE @trackQuantity int

    DECLARE @fixedShippingRateOnly int

    DECLARE @imageUrl nvarchar(4000)

    DECLARE @smallThumbnailUrl nvarchar(4000)

    DECLARE @hdThumbnailUrl nvarchar(4000)

    DECLARE @fixedShippingRate int

    DECLARE @digital int

    DECLARE @couponApplied int

    DECLARE @dimensionsLength int

    DECLARE @dimensionsWidth int

    DECLARE @dimensionsHeight int

    DECLARE @couponAmount nvarchar(4000)

    DECLARE @subscriptionId int

    DECLARE @recurringChargeSettingsRecurringInterval nvarchar(4000)

    DECLARE @recurringChargeSettingsRecurringIntervalCount int

    DECLARE @k int

    DECLARE @count_k int

    DECLARE @value_str nvarchar(4000)

    DECLARE @json1 int
    EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @json1 OUT

    DECLARE @i1 int

    DECLARE @count_i1 int

    DECLARE @strVal nvarchar(4000)

    DECLARE @selectionTitle nvarchar(4000)

    DECLARE @selectionModifier int

    DECLARE @selectionModifierType nvarchar(4000)

    DECLARE @taxOnDiscountedSubtotal nvarchar(4000)

    DECLARE @taxOnShipping int

    DECLARE @includeInPrice int

    DECLARE @discountInfoValue int

    DECLARE @discountInfoType nvarchar(4000)

    DECLARE @discountInfoBase nvarchar(4000)

    DECLARE @discountInfoOrderTotal int

    DECLARE @date nvarchar(4000)

    DECLARE @source nvarchar(4000)

    DECLARE @reason nvarchar(4000)

    DECLARE @amount nvarchar(4000)

    DECLARE @length int

    DECLARE @width int

    DECLARE @height int

    DECLARE @weight_str nvarchar(4000)

    DECLARE @declaredValue nvarchar(4000)

    DECLARE @created nvarchar(4000)

    DECLARE @shipToName nvarchar(4000)

    DECLARE @shipToCompanyName nvarchar(4000)

    DECLARE @shipToStreet nvarchar(4000)

    DECLARE @shipToCity nvarchar(4000)

    DECLARE @shipToCountryCode nvarchar(4000)

    DECLARE @shipToCountryName nvarchar(4000)

    DECLARE @shipToPostalCode nvarchar(4000)

    DECLARE @shipToStateOrProvinceCode nvarchar(4000)

    DECLARE @shipToStateOrProvinceName nvarchar(4000)

    DECLARE @shipToPhone nvarchar(4000)

    DECLARE @shipFromCompanyName nvarchar(4000)

    DECLARE @shipFromStreet nvarchar(4000)

    DECLARE @shipFromCity nvarchar(4000)

    DECLARE @shipFromCountryCode nvarchar(4000)

    DECLARE @shipFromCountryName nvarchar(4000)

    DECLARE @shipFromPostalCode nvarchar(4000)

    DECLARE @shipFromStateOrProvinceCode nvarchar(4000)

    DECLARE @shipFromStateOrProvinceName nvarchar(4000)

    DECLARE @shipFromPhone nvarchar(4000)

    DECLARE @parcelWeight nvarchar(4000)

    DECLARE @parcelWeightUnit int

    DECLARE @parcelWidth int

    DECLARE @parcelHeight int

    DECLARE @parcelLength int

    DECLARE @parcelDimensionUnit int

    DECLARE @shippingServiceCarrier int

    DECLARE @shippingServiceCarrierName int

    DECLARE @shippingServiceCarrierServiceName nvarchar(4000)

    DECLARE @shippingServiceCarrierServiceCode nvarchar(4000)

    DECLARE @trackingTracking_number nvarchar(4000)

    DECLARE @trackingTracking_url nvarchar(4000)

    DECLARE @trackingEstimatedDays int

    DECLARE @shippingLabelLabel_url nvarchar(4000)

    DECLARE @shippingLabelCommercial_invoice_url nvarchar(4000)

    DECLARE @customerInputType nvarchar(4000)

    DECLARE @title nvarchar(4000)

    DECLARE @orderDetailsDisplaySection nvarchar(4000)

    DECLARE @orderBy nvarchar(4000)

    DECLARE @total int
    EXEC sp_OAMethod @jResp, 'IntOf', @total OUT, 'total'
    DECLARE @count int
    EXEC sp_OAMethod @jResp, 'IntOf', @count OUT, 'count'
    DECLARE @offset int
    EXEC sp_OAMethod @jResp, 'IntOf', @offset OUT, 'offset'
    DECLARE @limit int
    EXEC sp_OAMethod @jResp, 'IntOf', @limit OUT, 'limit'
    DECLARE @i int
    SELECT @i = 0
    DECLARE @count_i int
    EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_i OUT, 'items'
    WHILE @i < @count_i
      BEGIN
        EXEC sp_OASetProperty @jResp, 'I', @i
        EXEC sp_OAMethod @jResp, 'StringOf', @id OUT, 'items[i].id'
        EXEC sp_OAMethod @jResp, 'StringOf', @subtotal OUT, 'items[i].subtotal'
        EXEC sp_OAMethod @jResp, 'StringOf', @total_str OUT, 'items[i].total'
        EXEC sp_OAMethod @jResp, 'StringOf', @giftCardRedemption OUT, 'items[i].giftCardRedemption'
        EXEC sp_OAMethod @jResp, 'StringOf', @totalBeforeGiftCardRedemption OUT, 'items[i].totalBeforeGiftCardRedemption'
        EXEC sp_OAMethod @jResp, 'BoolOf', @giftCardDoubleSpending OUT, 'items[i].giftCardDoubleSpending'
        EXEC sp_OAMethod @jResp, 'StringOf', @usdTotal OUT, 'items[i].usdTotal'
        EXEC sp_OAMethod @jResp, 'StringOf', @tax OUT, 'items[i].tax'
        EXEC sp_OAMethod @jResp, 'StringOf', @paymentMethod OUT, 'items[i].paymentMethod'
        EXEC sp_OAMethod @jResp, 'StringOf', @paymentStatus OUT, 'items[i].paymentStatus'
        EXEC sp_OAMethod @jResp, 'StringOf', @fulfillmentStatus OUT, 'items[i].fulfillmentStatus'
        EXEC sp_OAMethod @jResp, 'StringOf', @vendorOrderNumber OUT, 'items[i].vendorOrderNumber'
        EXEC sp_OAMethod @jResp, 'IntOf', @orderNumber OUT, 'items[i].orderNumber'
        EXEC sp_OAMethod @jResp, 'StringOf', @refererUrl OUT, 'items[i].refererUrl'
        EXEC sp_OAMethod @jResp, 'StringOf', @globalReferer OUT, 'items[i].globalReferer'
        EXEC sp_OAMethod @jResp, 'StringOf', @createDate OUT, 'items[i].createDate'
        EXEC sp_OAMethod @jResp, 'StringOf', @updateDate OUT, 'items[i].updateDate'
        EXEC sp_OAMethod @jResp, 'IntOf', @createTimestamp OUT, 'items[i].createTimestamp'
        EXEC sp_OAMethod @jResp, 'IntOf', @updateTimestamp OUT, 'items[i].updateTimestamp'
        EXEC sp_OAMethod @jResp, 'BoolOf', @hidden OUT, 'items[i].hidden'
        EXEC sp_OAMethod @jResp, 'StringOf', @orderComments OUT, 'items[i].orderComments'
        EXEC sp_OAMethod @jResp, 'StringOf', @privateAdminNotes OUT, 'items[i].privateAdminNotes'
        EXEC sp_OAMethod @jResp, 'StringOf', @email OUT, 'items[i].email'
        EXEC sp_OAMethod @jResp, 'StringOf', @ipAddress OUT, 'items[i].ipAddress'
        EXEC sp_OAMethod @jResp, 'IntOf', @customerId OUT, 'items[i].customerId'
        EXEC sp_OAMethod @jResp, 'IntOf', @customerGroupId OUT, 'items[i].customerGroupId'
        EXEC sp_OAMethod @jResp, 'StringOf', @customerGroup OUT, 'items[i].customerGroup'
        EXEC sp_OAMethod @jResp, 'BoolOf', @customerTaxExempt OUT, 'items[i].customerTaxExempt'
        EXEC sp_OAMethod @jResp, 'StringOf', @customerTaxId OUT, 'items[i].customerTaxId'
        EXEC sp_OAMethod @jResp, 'BoolOf', @customerTaxIdValid OUT, 'items[i].customerTaxIdValid'
        EXEC sp_OAMethod @jResp, 'BoolOf', @reversedTaxApplied OUT, 'items[i].reversedTaxApplied'
        EXEC sp_OAMethod @jResp, 'IntOf', @discount OUT, 'items[i].discount'
        EXEC sp_OAMethod @jResp, 'IntOf', @couponDiscount OUT, 'items[i].couponDiscount'
        EXEC sp_OAMethod @jResp, 'IntOf', @volumeDiscount OUT, 'items[i].volumeDiscount'
        EXEC sp_OAMethod @jResp, 'IntOf', @membershipBasedDiscount OUT, 'items[i].membershipBasedDiscount'
        EXEC sp_OAMethod @jResp, 'IntOf', @totalAndMembershipBasedDiscount OUT, 'items[i].totalAndMembershipBasedDiscount'
        EXEC sp_OAMethod @jResp, 'IntOf', @discountCouponId OUT, 'items[i].discountCoupon.id'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponName OUT, 'items[i].discountCoupon.name'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponCode OUT, 'items[i].discountCoupon.code'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponDiscountType OUT, 'items[i].discountCoupon.discountType'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponStatus OUT, 'items[i].discountCoupon.status'
        EXEC sp_OAMethod @jResp, 'IntOf', @discountCouponDiscount OUT, 'items[i].discountCoupon.discount'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponLaunchDate OUT, 'items[i].discountCoupon.launchDate'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponUsesLimit OUT, 'items[i].discountCoupon.usesLimit'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponApplicationLimit OUT, 'items[i].discountCoupon.applicationLimit'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponCreationDate OUT, 'items[i].discountCoupon.creationDate'
        EXEC sp_OAMethod @jResp, 'StringOf', @discountCouponUpdateDate OUT, 'items[i].discountCoupon.updateDate'
        EXEC sp_OAMethod @jResp, 'IntOf', @discountCouponOrderCount OUT, 'items[i].discountCoupon.orderCount'
        EXEC sp_OAMethod @jResp, 'StringOf', @refundedAmount OUT, 'items[i].refundedAmount'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonName OUT, 'items[i].billingPerson.name'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonCompanyName OUT, 'items[i].billingPerson.companyName'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonStreet OUT, 'items[i].billingPerson.street'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonCity OUT, 'items[i].billingPerson.city'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonCountryCode OUT, 'items[i].billingPerson.countryCode'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonCountryName OUT, 'items[i].billingPerson.countryName'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonPostalCode OUT, 'items[i].billingPerson.postalCode'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonStateOrProvinceCode OUT, 'items[i].billingPerson.stateOrProvinceCode'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonStateOrProvinceName OUT, 'items[i].billingPerson.stateOrProvinceName'
        EXEC sp_OAMethod @jResp, 'StringOf', @billingPersonPhone OUT, 'items[i].billingPerson.phone'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonName OUT, 'items[i].shippingPerson.name'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonCompanyName OUT, 'items[i].shippingPerson.companyName'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonStreet OUT, 'items[i].shippingPerson.street'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonCity OUT, 'items[i].shippingPerson.city'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonCountryCode OUT, 'items[i].shippingPerson.countryCode'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonCountryName OUT, 'items[i].shippingPerson.countryName'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonPostalCode OUT, 'items[i].shippingPerson.postalCode'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonStateOrProvinceCode OUT, 'items[i].shippingPerson.stateOrProvinceCode'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonStateOrProvinceName OUT, 'items[i].shippingPerson.stateOrProvinceName'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingPersonPhone OUT, 'items[i].shippingPerson.phone'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingOptionShippingCarrierName OUT, 'items[i].shippingOption.shippingCarrierName'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingOptionShippingMethodName OUT, 'items[i].shippingOption.shippingMethodName'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingOptionShippingRate OUT, 'items[i].shippingOption.shippingRate'
        EXEC sp_OAMethod @jResp, 'StringOf', @shippingOptionEstimatedTransitTime OUT, 'items[i].shippingOption.estimatedTransitTime'
        EXEC sp_OAMethod @jResp, 'BoolOf', @shippingOptionIsPickup OUT, 'items[i].shippingOption.isPickup'
        EXEC sp_OAMethod @jResp, 'StringOf', @handlingFeeName OUT, 'items[i].handlingFee.name'
        EXEC sp_OAMethod @jResp, 'IntOf', @handlingFeeValue OUT, 'items[i].handlingFee.value'
        EXEC sp_OAMethod @jResp, 'StringOf', @handlingFeeDescription OUT, 'items[i].handlingFee.description'
        EXEC sp_OAMethod @jResp, 'StringOf', @paymentModule OUT, 'items[i].paymentModule'
        EXEC sp_OAMethod @jResp, 'StringOf', @additionalInfoGoogle_customer_id OUT, 'items[i].additionalInfo.google_customer_id'
        EXEC sp_OAMethod @jResp, 'BoolOf', @acceptMarketing OUT, 'items[i].acceptMarketing'
        EXEC sp_OAMethod @jResp, 'StringOf', @refererId OUT, 'items[i].refererId'
        EXEC sp_OAMethod @jResp, 'BoolOf', @disableAllCustomerNotifications OUT, 'items[i].disableAllCustomerNotifications'
        EXEC sp_OAMethod @jResp, 'BoolOf', @externalFulfillment OUT, 'items[i].externalFulfillment'
        EXEC sp_OAMethod @jResp, 'BoolOf', @pricesIncludeTax OUT, 'items[i].pricesIncludeTax'
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].customDiscount'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].discountInfo'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'IntOf', @value OUT, 'items[i].discountInfo[j].value'
            EXEC sp_OAMethod @jResp, 'StringOf', @v_type OUT, 'items[i].discountInfo[j].type'
            EXEC sp_OAMethod @jResp, 'StringOf', @base OUT, 'items[i].discountInfo[j].base'
            EXEC sp_OAMethod @jResp, 'IntOf', @orderTotal OUT, 'items[i].discountInfo[j].orderTotal'
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].items'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'IntOf', @id_int OUT, 'items[i].items[j].id'
            EXEC sp_OAMethod @jResp, 'IntOf', @productId OUT, 'items[i].items[j].productId'
            EXEC sp_OAMethod @jResp, 'IntOf', @categoryId OUT, 'items[i].items[j].categoryId'
            EXEC sp_OAMethod @jResp, 'IntOf', @price OUT, 'items[i].items[j].price'
            EXEC sp_OAMethod @jResp, 'IntOf', @productPrice OUT, 'items[i].items[j].productPrice'
            EXEC sp_OAMethod @jResp, 'StringOf', @sku OUT, 'items[i].items[j].sku'
            EXEC sp_OAMethod @jResp, 'IntOf', @quantity OUT, 'items[i].items[j].quantity'
            EXEC sp_OAMethod @jResp, 'StringOf', @shortDescription OUT, 'items[i].items[j].shortDescription'
            EXEC sp_OAMethod @jResp, 'StringOf', @tax OUT, 'items[i].items[j].tax'
            EXEC sp_OAMethod @jResp, 'IntOf', @shipping OUT, 'items[i].items[j].shipping'
            EXEC sp_OAMethod @jResp, 'IntOf', @quantityInStock OUT, 'items[i].items[j].quantityInStock'
            EXEC sp_OAMethod @jResp, 'StringOf', @name OUT, 'items[i].items[j].name'
            EXEC sp_OAMethod @jResp, 'BoolOf', @isShippingRequired OUT, 'items[i].items[j].isShippingRequired'
            EXEC sp_OAMethod @jResp, 'IntOf', @weight OUT, 'items[i].items[j].weight'
            EXEC sp_OAMethod @jResp, 'BoolOf', @trackQuantity OUT, 'items[i].items[j].trackQuantity'
            EXEC sp_OAMethod @jResp, 'BoolOf', @fixedShippingRateOnly OUT, 'items[i].items[j].fixedShippingRateOnly'
            EXEC sp_OAMethod @jResp, 'StringOf', @imageUrl OUT, 'items[i].items[j].imageUrl'
            EXEC sp_OAMethod @jResp, 'StringOf', @smallThumbnailUrl OUT, 'items[i].items[j].smallThumbnailUrl'
            EXEC sp_OAMethod @jResp, 'StringOf', @hdThumbnailUrl OUT, 'items[i].items[j].hdThumbnailUrl'
            EXEC sp_OAMethod @jResp, 'IntOf', @fixedShippingRate OUT, 'items[i].items[j].fixedShippingRate'
            EXEC sp_OAMethod @jResp, 'BoolOf', @digital OUT, 'items[i].items[j].digital'
            EXEC sp_OAMethod @jResp, 'BoolOf', @couponApplied OUT, 'items[i].items[j].couponApplied'
            EXEC sp_OAMethod @jResp, 'IntOf', @dimensionsLength OUT, 'items[i].items[j].dimensions.length'
            EXEC sp_OAMethod @jResp, 'IntOf', @dimensionsWidth OUT, 'items[i].items[j].dimensions.width'
            EXEC sp_OAMethod @jResp, 'IntOf', @dimensionsHeight OUT, 'items[i].items[j].dimensions.height'
            EXEC sp_OAMethod @jResp, 'StringOf', @couponAmount OUT, 'items[i].items[j].couponAmount'
            EXEC sp_OAMethod @jResp, 'IntOf', @subscriptionId OUT, 'items[i].items[j].subscriptionId'
            EXEC sp_OAMethod @jResp, 'StringOf', @recurringChargeSettingsRecurringInterval OUT, 'items[i].items[j].recurringChargeSettings.recurringInterval'
            EXEC sp_OAMethod @jResp, 'IntOf', @recurringChargeSettingsRecurringIntervalCount OUT, 'items[i].items[j].recurringChargeSettings.recurringIntervalCount'
            SELECT @k = 0
            EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_k OUT, 'items[i].items[j].selectedOptions'
            WHILE @k < @count_k
              BEGIN
                EXEC sp_OASetProperty @jResp, 'K', @k
                EXEC sp_OAMethod @jResp, 'StringOf', @name OUT, 'items[i].items[j].selectedOptions[k].name'
                EXEC sp_OAMethod @jResp, 'StringOf', @value_str OUT, 'items[i].items[j].selectedOptions[k].value'
                EXEC sp_OAMethod @jResp, 'StringOf', @v_type OUT, 'items[i].items[j].selectedOptions[k].type'
                EXEC sp_OAMethod @jResp, 'ObjectOf2', @success OUT, 'items[i].items[j].selectedOptions[k]', @json1

                SELECT @i1 = 0
                EXEC sp_OAMethod @json1, 'SizeOfArray', @count_i1 OUT, 'valuesArray'
                WHILE @i1 < @count_i1
                  BEGIN
                    EXEC sp_OASetProperty @json1, 'I', @i1
                    EXEC sp_OAMethod @json1, 'StringOf', @strVal OUT, 'valuesArray[i]'
                    SELECT @i1 = @i1 + 1
                  END

                EXEC sp_OAMethod @jResp, 'ObjectOf2', @success OUT, 'items[i].items[j].selectedOptions[k]', @json1
                SELECT @i1 = 0
                EXEC sp_OAMethod @json1, 'SizeOfArray', @count_i1 OUT, 'selections'
                WHILE @i1 < @count_i1
                  BEGIN
                    EXEC sp_OASetProperty @json1, 'I', @i1
                    EXEC sp_OAMethod @json1, 'StringOf', @selectionTitle OUT, 'selections[i].selectionTitle'
                    EXEC sp_OAMethod @json1, 'IntOf', @selectionModifier OUT, 'selections[i].selectionModifier'
                    EXEC sp_OAMethod @json1, 'StringOf', @selectionModifierType OUT, 'selections[i].selectionModifierType'
                    SELECT @i1 = @i1 + 1
                  END
                SELECT @k = @k + 1
              END
            SELECT @k = 0
            EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_k OUT, 'items[i].items[j].taxes'
            WHILE @k < @count_k
              BEGIN
                EXEC sp_OASetProperty @jResp, 'K', @k
                EXEC sp_OAMethod @jResp, 'StringOf', @name OUT, 'items[i].items[j].taxes[k].name'
                EXEC sp_OAMethod @jResp, 'IntOf', @value OUT, 'items[i].items[j].taxes[k].value'
                EXEC sp_OAMethod @jResp, 'StringOf', @total_str OUT, 'items[i].items[j].taxes[k].total'
                EXEC sp_OAMethod @jResp, 'StringOf', @taxOnDiscountedSubtotal OUT, 'items[i].items[j].taxes[k].taxOnDiscountedSubtotal'
                EXEC sp_OAMethod @jResp, 'IntOf', @taxOnShipping OUT, 'items[i].items[j].taxes[k].taxOnShipping'
                EXEC sp_OAMethod @jResp, 'BoolOf', @includeInPrice OUT, 'items[i].items[j].taxes[k].includeInPrice'
                SELECT @k = @k + 1
              END
            SELECT @k = 0
            EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_k OUT, 'items[i].items[j].discounts'
            WHILE @k < @count_k
              BEGIN
                EXEC sp_OASetProperty @jResp, 'K', @k
                EXEC sp_OAMethod @jResp, 'IntOf', @discountInfoValue OUT, 'items[i].items[j].discounts[k].discountInfo.value'
                EXEC sp_OAMethod @jResp, 'StringOf', @discountInfoType OUT, 'items[i].items[j].discounts[k].discountInfo.type'
                EXEC sp_OAMethod @jResp, 'StringOf', @discountInfoBase OUT, 'items[i].items[j].discounts[k].discountInfo.base'
                EXEC sp_OAMethod @jResp, 'IntOf', @discountInfoOrderTotal OUT, 'items[i].items[j].discounts[k].discountInfo.orderTotal'
                EXEC sp_OAMethod @jResp, 'StringOf', @total_str OUT, 'items[i].items[j].discounts[k].total'
                SELECT @k = @k + 1
              END
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].refunds'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'StringOf', @date OUT, 'items[i].refunds[j].date'
            EXEC sp_OAMethod @jResp, 'StringOf', @source OUT, 'items[i].refunds[j].source'
            EXEC sp_OAMethod @jResp, 'StringOf', @reason OUT, 'items[i].refunds[j].reason'
            EXEC sp_OAMethod @jResp, 'StringOf', @amount OUT, 'items[i].refunds[j].amount'
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].predictedPackage'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'IntOf', @length OUT, 'items[i].predictedPackage[j].length'
            EXEC sp_OAMethod @jResp, 'IntOf', @width OUT, 'items[i].predictedPackage[j].width'
            EXEC sp_OAMethod @jResp, 'IntOf', @height OUT, 'items[i].predictedPackage[j].height'
            EXEC sp_OAMethod @jResp, 'StringOf', @weight_str OUT, 'items[i].predictedPackage[j].weight'
            EXEC sp_OAMethod @jResp, 'StringOf', @declaredValue OUT, 'items[i].predictedPackage[j].declaredValue'
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].shipments'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'StringOf', @id OUT, 'items[i].shipments[j].id'
            EXEC sp_OAMethod @jResp, 'StringOf', @created OUT, 'items[i].shipments[j].created'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToName OUT, 'items[i].shipments[j].shipTo.name'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToCompanyName OUT, 'items[i].shipments[j].shipTo.companyName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToStreet OUT, 'items[i].shipments[j].shipTo.street'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToCity OUT, 'items[i].shipments[j].shipTo.city'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToCountryCode OUT, 'items[i].shipments[j].shipTo.countryCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToCountryName OUT, 'items[i].shipments[j].shipTo.countryName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToPostalCode OUT, 'items[i].shipments[j].shipTo.postalCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToStateOrProvinceCode OUT, 'items[i].shipments[j].shipTo.stateOrProvinceCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToStateOrProvinceName OUT, 'items[i].shipments[j].shipTo.stateOrProvinceName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipToPhone OUT, 'items[i].shipments[j].shipTo.phone'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromCompanyName OUT, 'items[i].shipments[j].shipFrom.companyName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromStreet OUT, 'items[i].shipments[j].shipFrom.street'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromCity OUT, 'items[i].shipments[j].shipFrom.city'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromCountryCode OUT, 'items[i].shipments[j].shipFrom.countryCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromCountryName OUT, 'items[i].shipments[j].shipFrom.countryName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromPostalCode OUT, 'items[i].shipments[j].shipFrom.postalCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromStateOrProvinceCode OUT, 'items[i].shipments[j].shipFrom.stateOrProvinceCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromStateOrProvinceName OUT, 'items[i].shipments[j].shipFrom.stateOrProvinceName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shipFromPhone OUT, 'items[i].shipments[j].shipFrom.phone'
            EXEC sp_OAMethod @jResp, 'StringOf', @parcelWeight OUT, 'items[i].shipments[j].parcel.weight'
            EXEC sp_OAMethod @jResp, 'IntOf', @parcelWeightUnit OUT, 'items[i].shipments[j].parcel.weightUnit'
            EXEC sp_OAMethod @jResp, 'IntOf', @parcelWidth OUT, 'items[i].shipments[j].parcel.width'
            EXEC sp_OAMethod @jResp, 'IntOf', @parcelHeight OUT, 'items[i].shipments[j].parcel.height'
            EXEC sp_OAMethod @jResp, 'IntOf', @parcelLength OUT, 'items[i].shipments[j].parcel.length'
            EXEC sp_OAMethod @jResp, 'IntOf', @parcelDimensionUnit OUT, 'items[i].shipments[j].parcel.dimensionUnit'
            EXEC sp_OAMethod @jResp, 'IntOf', @shippingServiceCarrier OUT, 'items[i].shipments[j].shippingService.carrier'
            EXEC sp_OAMethod @jResp, 'IntOf', @shippingServiceCarrierName OUT, 'items[i].shipments[j].shippingService.carrierName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shippingServiceCarrierServiceName OUT, 'items[i].shipments[j].shippingService.carrierServiceName'
            EXEC sp_OAMethod @jResp, 'StringOf', @shippingServiceCarrierServiceCode OUT, 'items[i].shipments[j].shippingService.carrierServiceCode'
            EXEC sp_OAMethod @jResp, 'StringOf', @trackingTracking_number OUT, 'items[i].shipments[j].tracking.tracking_number'
            EXEC sp_OAMethod @jResp, 'StringOf', @trackingTracking_url OUT, 'items[i].shipments[j].tracking.tracking_url'
            EXEC sp_OAMethod @jResp, 'IntOf', @trackingEstimatedDays OUT, 'items[i].shipments[j].tracking.estimatedDays'
            EXEC sp_OAMethod @jResp, 'StringOf', @shippingLabelLabel_url OUT, 'items[i].shipments[j].shippingLabel.label_url'
            EXEC sp_OAMethod @jResp, 'StringOf', @shippingLabelCommercial_invoice_url OUT, 'items[i].shipments[j].shippingLabel.commercial_invoice_url'
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].taxesOnShipping'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'StringOf', @name OUT, 'items[i].taxesOnShipping[j].name'
            EXEC sp_OAMethod @jResp, 'IntOf', @value OUT, 'items[i].taxesOnShipping[j].value'
            EXEC sp_OAMethod @jResp, 'StringOf', @total_str OUT, 'items[i].taxesOnShipping[j].total'
            SELECT @j = @j + 1
          END
        SELECT @j = 0
        EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'items[i].orderExtraFields'
        WHILE @j < @count_j
          BEGIN
            EXEC sp_OASetProperty @jResp, 'J', @j
            EXEC sp_OAMethod @jResp, 'StringOf', @id OUT, 'items[i].orderExtraFields[j].id'
            EXEC sp_OAMethod @jResp, 'StringOf', @value_str OUT, 'items[i].orderExtraFields[j].value'
            EXEC sp_OAMethod @jResp, 'StringOf', @customerInputType OUT, 'items[i].orderExtraFields[j].customerInputType'
            EXEC sp_OAMethod @jResp, 'StringOf', @title OUT, 'items[i].orderExtraFields[j].title'
            EXEC sp_OAMethod @jResp, 'StringOf', @orderDetailsDisplaySection OUT, 'items[i].orderExtraFields[j].orderDetailsDisplaySection'
            EXEC sp_OAMethod @jResp, 'StringOf', @orderBy OUT, 'items[i].orderExtraFields[j].orderBy'
            SELECT @j = @j + 1
          END
        SELECT @i = @i + 1
      END

    EXEC @hr = sp_OADestroy @http
    EXEC @hr = sp_OADestroy @jsonToken
    EXEC @hr = sp_OADestroy @params
    EXEC @hr = sp_OADestroy @resp
    EXEC @hr = sp_OADestroy @sbResponseBody
    EXEC @hr = sp_OADestroy @jResp
    EXEC @hr = sp_OADestroy @json1


END
GO