0

Working with the UPS API - when attempting to generate CN22 content for an international shipment, we are getting a "Invalid Number Of Products" Response.

Any help would be appreciated.

Example JSON:

{
  "ShipmentRequest": {
    "LabelSpecification": {
      "LabelStockSize": {
        "Width": "4",
        "Height": "6"
      },
      "LabelImageFormat": {
        "Code": "ZPL"
      }
    },
    "Request": {
      "RequestOption": "nonvalidate",
      "TransactionReference": {
        "CustomerContext": "Customer Invoice: 13950956"
      },
      "RequestAction": "ShipConfirm"
    },
    "Shipment": {
      "USPSEndorsement": "1",
      "PackageID": "13950975",
      "PaymentInformation": {
        "ShipmentCharge": {
          "BillShipper": {
            "AccountNumber": "XXXXXX"
          },
          "Type": "01"
        }
      },
      "ShipmentServiceOptions": {
        "InternationalForms": {
          "CN22OtherDescription": "NOT FOR RESALE",
          "LabelPrintType": "ZPL",
          "PrintsPerPage": "1",
          "Product": [
            {
              "OriginCountryCode": "US",
              "Unit": {
                "Number": "3",
                "UnitOfMeasurement": {
                  "Code": "USD"
                },
                "Value": "29.97"
              },
              "Description": "Sticker",
              "CommodityCode": "4908.90.0000"
            }
          ],
          "CN22Content": [
            {
              "CN22ContentDescription": "Sticker",
              "CN22ContentTotalValue": "9.99",
              "CN22ContentWeight": {
                "UnitOfMeasurement": {
                  "Code": "OZS",
                  "Description": "OZS"
                },
                "Weight": "3.30"
              },
              "CN22ContentTariffNumber": "4908.90.0000",
              "CN22ContentCountryOfOrigin": "US",
              "CN22ContentQuantity": "3",
              "CN22ContentCurrencyCode": "USD"
            }
          ],
          "LabelSize": "6",
          "CN22Type": "4",
          "FormType": "09",
          "NumberOfPackagesPerCommodity": "1"
        }
      },
      "Description": "Apparel",
      "Package": {
        "Packaging": {
          "Code": "02"
        },
        "PackageWeight": {
          "UnitOfMeasurement": {
            "Code": "LBS"
          },
          "Weight": "4.03"
        }
      },
      "ShipFrom": {
        "Address": {
          "PostalCode": "12345",
          "City": "City",
          "CountryCode": "US",
          "StateProvinceCode": "MI",
          "AddressLine": [
            "12345 ORourke BLVD"
          ]
        },
        "Name": "Fulfillment Co."
      },
      "Service": {
        "Code": "08"
      },
      "CostCenter": "123456",
      "ShipTo": {
        "Address": {
          "PostalCode": "23056",
          "City": "Ost Kilian",
          "CountryCode": "DE",
          "StateProvinceCode": "",
          "AddressLine": [
            "Fichtenweg 07b",
            "Zimmer 265"
          ]
        },
        "Phone": {
          "Number": "9894484689"
        },
        "Name": "Mr Brown",
        "AttentionName": "Mr Brown"
      },
      "Shipper": {
        "ShipperNumber": "XXXXXX",
        "Address": {
          "PostalCode": "12345",
          "City": "City",
          "CountryCode": "US",
          "StateProvinceCode": "MI",
          "AddressLine": [
            "12345 ORourke BLVD."
          ]
        },
        "Phone": {
          "Number": "1231231234"
        },
        "Name": "Mr. Brown",
        "AttentionName": "Mr. Brown"
      }
    }
  }
}

UPS API docs don't detail this function very well, or the source of the error. Regular domestic shipments don't have an issue, only when using the international forms element.

0 Answers0