# UPS by Unishippers

For merchants shipping from the United States, ShipStation supports connecting your [UPS](https://www.ups.com) account through [Unishippers](https://www.unishippers.com), allowing you to access your negotiated UPS shipping rates and create domestic and international shipping labels directly through ShipStation API.

Unishippers is an authorized UPS reseller. Your negotiated rates are managed by Unishippers and reflected in real time when you get rates in ShipStation API.

This guide provides developers with the details needed to build UPS by Unishippers shipping capabilities into your ShipStation API workflows.

> **NOTE:**
### Billing
For billing questions, please contact Unishippers support directly. Unishippers invoices you directly for shipments. There is no reconciliation process required within ShipStation API, and labels are not charged at the time of creation.


## Requirements

The following fields are required to establish a connection with Unishippers:

| Property | Type | Required? | Description |
|  --- | --- | --- | --- |
| `nickname` | *string* | **required** | A nickname for the account in ShipStation API (especially useful if connecting multiple accounts). |
| `client_id` | *string* | **required** | Your Unishippers API Client ID. |
| `client_secret` | *string* | **required** | Your Unishippers Client Secret. |


Contact Unishippers support to locate your account credentials in your account portal.

### Shipping Requirements

* Weight is required to create any label.
* **Ship from country**: United States only
* **Ship to countries**: Determined by the UPS service selected
* International shipping is supported. All necessary customs documents are generated automatically and returned via the API.


> **NOTE:**
### Your Carriers Add-On
🇺🇸 For US-based ShipStation accounts, certain plans require you to enable the Your Carriers add-on before connecting carrier accounts. If you have not yet enabled it, you will be prompted to do so.


## Connect Account

You can connect a UPS by Unishippers account using the POST method to the `/v1/connections/carriers/` endpoint, or via the ShipStation API Dashboard.

### Connect via Endpoint

`carrier_name`: `unishippers_parcel`

**POST /v1/connections/carriers/:carrier_name**


```http
POST /v1/connections/carriers/unishippers_parcel HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "nickname": "My Unishippers Account",
  "client_id": "your_client_id",
  "client_secret": "your_client_secret"
}
```

A successful connection will return a response with the `carrier_id`, which you'll use for any requests for this account going forward.

### Connect via Dashboard

1. Go to **Settings > Shipping > Carriers** and select **Add Carrier**.
2. Enter **Unishippers** in the search field and select the Unishippers tile.
3. Enter your account nickname and your Unishippers account credentials.
4. Click **Connect**.


Your Unishippers account will appear under the Your Carrier Accounts tab once successfully connected.

## Rates

UPS by Unishippers supports [rate shopping](/apis/shipengine/docs/rates/rates) with ShipStation API. Your negotiated rates are configured and managed by Unishippers and are reflected automatically in ShipStation API rate responses in real time. No additional setup is required within ShipStation API to access your negotiated rates.

## Service Details

All services available through this integration are UPS services routed via the Unishippers platform. Merchants have access only to the service types returned for their specific Unishippers account.

To inquire about eligibility for specific services, contact Unishippers directly.

> **NOTE:**
### Service and Package Code Prefix Difference
Service codes use the `wwex_ups_*` prefix for historical/technical reasons, while package codes use the `unishippers_*` prefix. Both are correct for the Unishippers integration.


### Domestic Services

| Service | Service Code |
|  --- | --- |
| UPS Next Day Air® Early | `wwex_ups_next_day_early` |
| UPS Next Day Air® | `wwex_ups_next_day_air` |
| UPS Next Day Air Saver® | `wwex_ups_next_day_saver` |
| UPS 2nd Day Air® | `wwex_ups_2nd_day_air` |
| UPS 2nd Day Air A.M.® | `wwex_ups_2nd_day_air_am` |
| UPS 3 Day Select® | `wwex_ups_3_day_select` |
| UPS® Ground | `wwex_ups_ground` |
| UPS Ground Saver | `wwex_ups_ground_saver` |


### International Services

| Service | Service Code |
|  --- | --- |
| UPS Worldwide Expedited® | `wwex_ups_worldwide_expedited` |
| UPS Worldwide Express® | `wwex_ups_worldwide_express` |
| UPS Worldwide Saver | `wwex_ups_worldwide_saver` |


### Return Services

Domestic return labels are supported. When a return label is requested, both the outbound and return labels are generated together in a single response. Return labels are only available in combination with the corresponding forward shipment label.

Review the [Return Labels page](/apis/shipengine/docs/shipping/returns) for details on creating return labels with ShipStation API.

### Packages

UPS by Unishippers supports the following [carrier package types](/apis/shipengine/docs/shipping/carrier-packaging):

| Package Type | Carrier Code | API Code |
|  --- | --- | --- |
| Custom | `custom` | `unishippers_custom` |
| UPS 10KG Box | `express10kgbox` | `unishippers_express_10kg_box` |
| UPS 25KG Box | `express25kgbox` | `unishippers_express_25kg_box` |
| UPS Express Box | `expressbox` | `unishippers_express_box` |
| UPS Express Box Large | `expressboxeslarge` | `unishippers_express_boxes_large` |
| UPS Express Box Medium | `expressboxesmedium` | `unishippers_express_boxes_medium` |
| UPS Express Box Small | `expressboxessmall` | `unishippers_express_boxes_small` |
| UPS Express Envelope | `expressenvelopes` | `unishippers_express_envelopes` |
| UPS Express Hard Pak | `expresshardpaks` | `unishippers_express_hard_paks` |
| UPS Express Pad Pak | `expresspadpaks` | `unishippers_express_pad_paks` |
| UPS Express Pak | `expresspaks` | `unishippers_express_paks` |
| UPS Express Reusable Envelope | `expressreusableenv` | `unishippers_express_reusable_envelopes` |
| UPS Express Tube | `expresstube` | `unishippers_express_tube` |
| UPS Legal Express Reusable Envelope | `legalexpressreusenv` | `unishippers_legal_express_reusable_envelopes` |
| UPS Legal Window Envelope | `legalwindowenvelopes` | `unishippers_legal_window_envelopes` |


### Adding Shipment Insurance

UPS by Unishippers supports adding insurance to your shipments through UPS's standard insurance offerings. Review the [Parcel Insurance page](/apis/shipengine/docs/shipping/insurance) for details on adding shipment insurance with ShipStation API.

## Label Support

* Label sizes: Standard UPS label sizes
* Label formats: Standard UPS label formats


### Label Reference Fields

Contact Unishippers support for details on custom label message support.

### Multi-Package Labels

UPS by Unishippers supports creating [multi-package shipments](/apis/shipengine/docs/shipping/multi-package) with ShipStation API.

### Label Branding

Contact Unishippers support for details on label branding support.

### Voiding Labels

UPS by Unishippers supports [voiding labels](/apis/shipengine/docs/labels/voiding) with ShipStation API.

Individual labels can be voided through ShipStation API. Bulk voiding is not supported. Standard UPS voiding rules apply — refer to UPS guidelines for time limits and eligibility.

### Paperless Labels

Contact Unishippers support for details on paperless label support.

### Customs Declarations

All required customs and international shipping documents are generated and returned automatically by the API for international shipments.

## Delivery Confirmation

Both Signature and Adult Signature confirmation types are available for applicable services.

| Confirmation Type | API Code | Description |
|  --- | --- | --- |
| Signature Confirmation | `signature` | Signature is required for delivery. |
| Adult Signature Confirmation | `adult_signature` | Adult signature (21+ years) is required for delivery. |


See our [Delivery Confirmation page](/apis/shipengine/docs/shipping/delivery-confirmation) for more details about using the `confirmation` property.

## Advanced Options

UPS by Unishippers supports certain [advanced options](/apis/shipengine/docs/carriers/advanced-options), which you can add to the `shipment` object when creating a shipment or label.

* **DDP (Delivered Duty Paid)**: Bill duties and taxes to the payor of shipping. See [Bill Duties & Taxes](/apis/shipengine/docs/shipping/bill-to-third-party) for details.
* **Tax Identifiers**: Support for shipper, consignee, and sold-to tax identifiers. See [Tax Identifier Numbers](/apis/shipengine/docs/shipping/tax-identifier-numbers) for details.


> **NOTE:**
Shipping hazardous materials is not supported through this integration.


To ensure you always have the most up-to-date information about Unishippers's advanced options, use the [list carrier options call](/apis/shipengine/docs/reference/list-carrier-options).

## Manifests

**UPS by Unishippers does not require end-of-day manifesting.** ShipStation API submits all shipment data electronically at the time of label creation. No end-of-day process, manifesting, or PLD form is necessary.

## Scheduling Pickups

Contact Unishippers support for details on pickup scheduling capabilities.

> **NOTE:**
Pickup cancellation is not supported through ShipStation API. If you need to cancel a scheduled pickup, please contact UPS directly.


## Service Points (PUDO)

UPS by Unishippers does not currently support shipping to [service points](/apis/shipengine/docs/pick-up-drop-off/pudo-intro) via ShipStation API.

## Tracking

All shipments include a 1Z UPS tracking number for end-to-end tracking. Tracking is available for both domestic and international shipments.

ShipStation API's integration with UPS by Unishippers supports receiving tracking updates. Review our [Track a Package guides](/apis/shipengine/docs/tracking/tracking) for details on tracking with ShipStation API.

> **NOTE:**
Webhook-based push tracking updates are not supported through this integration.


## Troubleshooting Tips

| Issue | Resolution |
|  --- | --- |
| **Error creating international label** | Ensure all required fields are populated, including shipment weight, customs item descriptions, declared values, and any applicable tax identifiers. All international documents are generated automatically. Verify that all customs information is complete and accurate. |
| **Need to void a label** | Labels can be voided individually through ShipStation API. Bulk voiding is not supported. Standard UPS voiding rules apply — refer to UPS guidelines for time limits and eligibility. |


## Disconnecting Your UPS by Unishippers Account

See the Disconnect section in our [Delete a Carrier page](/apis/shipengine/docs/reference/carriers/delete-carrier) for the process of deleting or disconnecting a carrier from ShipStation API.

> **NOTE:**
If you disconnect a carrier account and reconnect it, the account will have a new `carrier_id` in ShipStation API.