# LaserShip credential requirements

Prior to shipping with LaserShip, you must configure credentials in the [Shipium Console](https://partner.shipium.com/login). You'll provide a Web Service ID, Web Service Key, and Customer Branch for the Fulfillment Center (provided by LaserShip) as well as the critical pull time and injection time.

LaserShip's service methods and their identifiers are listed on the [Supported Carriers](https://docs.shipium.com/docs/supported-carriers#lasership) page.

# Additional requirements

When shipping with LaserShip, you must include three required fields, listed in the following table, as part of the `shipmentParameters`, **even for domestic shipments**, due to the carrier requiring these fields to be present for every label created.

## Required fields

| Request field | Details |
| --- | --- |
| `customsInfo.totalCustomsValue` | **Type:** String<br>**Description:** The customs value of the shipment in total customs value currency |
| `customsInfo.totalCustomsValueCurrency` | **Type:** String<br>**Description:** The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code representing the total customs value |
| `customsInfo.customsDescription` | **Type:** String<br>**Description:** The detailed description of the items being shipped |

A snippet of the JSON request for the API call with the required fields is included. This example is for a single-parcel shipment. The request fields for a [multi-parcel shipment](https://docs.shipium.com/docs/multi-parcel-shipments) would be included in `multiParcelShipmentParameters`.

JSON

```json
{
  "shipmentParameters": {
    "customsInfo": {
          "totalCustomsValue": 54.95,
          "totalCustomsValueCurrency": "usd",
          "customsDescription": "9 mm steel screws"
     }
  }
}
```

# Declared value for packages

When shipping with LaserShip, you may optionally declare a value for the package being shipped by including the fields provided in the table below.

| Request field | Details |
| --- | --- |
| `totalDeclaredValue.declaredValue` | **Type:** Number (float)<br>**Example:**`500`<br>**Description:** The value to be passed through as the total monetary amount of the declared value for the package. This is what will be reimbursed if the package is damaged. If the declared value exceeds the carrier's free threshold, there may be a surcharge for passing a declared value. |
| `totalDeclaredValue.currencyCode` | **Type:** String<br>**Example:**`usd`<br>**Description:** The currency code for the declared value |

A snippet of the JSON request for the API call with the optional declared value fields is included. This example is for a single-parcel shipment. A [multi-parcel shipment](https://docs.shipium.com/docs/multi-parcel-shipments) request would include these fields in `multiParcelShipmentParameters`.

JSON

```json
{
  "shipmentParameters": {
    "totalDeclaredValue": {
        "declaredValue": 5000,
        "currencyCode": "usd"
     }
  }
}
```

# Resources

Your Shipium team member is available to help along the way. However, you might find these resources helpful:

- [Terms and Definitions](https://docs.shipium.com/docs/common-terms)
- [Troubleshooting Guide](https://docs.shipium.com/docs/troubleshooting-guide)
- [Contact Shipium Support](https://docs.shipium.com/docs/contacting-shipium-support)
