Shipping for platforms marketplaces and ecommerce

Shipping API and dashboard to help businesses succeed through shipping

The leading shipping platform for commerce worldwide

The shipping API built for developers

RESTful API with pre-built client libraries and comprehensive documentation to make development a fulfilling experience

API Documentation
  • cURL
  • Ruby
  • Python
  • PHP
  • Node
  • C#
curl shipments/  \
    -H "Authorization: ShippoToken {TEST_TOKEN}" \
    -H "Content-Type: application/json"  \
    -d '{
       "object_purpose":"PURCHASE",
       "address_from":{
          "object_purpose":"PURCHASE",
          "name":"Mr. Hippo",
          "street1":"215 Clayton St.",
          "city":"San Francisco",
          "state":"CA",
          "zip":"94117",
          "country":"US",
          "phone":"+1 555 341 9393",
          "email":"support@goshippo.com"
       },
       "address_to":{
          "object_purpose":"PURCHASE",
          "name":"Mrs. Hippo",
          "street1":"965 Mission St.",
          "city":"San Francisco",
          "state":"CA",
          "zip":"94105",
          "country":"US",
          "phone":"+1 555 341 9393",
          "email":"support@goshippo.com"
       },
       "parcel":{
          "length":"5",
          "width":"5",
          "height":"5",
          "distance_unit":"in",
          "weight":"2",
          "mass_unit":"lb"
       },
       "async": false
    }'
require 'shippo'

Shippo::api_token = '{TEST_TOKEN}'

address_from = {
    :object_purpose => 'PURCHASE',
    :name => 'Shawn Ippotle',
    :street1 => '965 Mission St.',
    :city => 'San Francisco',
    :state => 'CA',
    :zip => '94117',
    :country => 'US',
    :phone => '+1 555 341 9393',
    :email => 'shippotle@goshippo.com' 
}

address_to = {
    :object_purpose => 'PURCHASE',
    :name => 'Mr Hippo',
    :street1 => 'Broadway 1',
    :city => 'New York',
    :state => 'NY',
    :zip => '10007',
    :country => 'US',
    :phone => '+1 555 341 9393',
    :email => 'mrhippo@goshippo.com'
}

parcel = {
    :length => 5,
    :width => 1,
    :height => 5.555,
    :distance_unit => :in,
    :weight => 2,
    :mass_unit => :lb
}

shipment = Shippo::Shipment.create(
    :object_purpose => 'PURCHASE',
    :address_from => address_from,
    :address_to => address_to,
    :parcel => parcel,
    :async => false
)
import shippo

shippo.api_key = "{TEST_TOKEN}"

address_from = {
    "object_purpose": "PURCHASE",
    "name": "Shawn Ippotle",
    "street1": "215 Clayton St.",
    "city": "San Francisco",
    "state": "CA",
    "zip": "94117",
    "country": "US",
    "phone": "+1 555 341 9393",
    "email": "shippotle@goshippo.com"
}

address_to = {
    "object_purpose": "PURCHASE",
    "name": "Mr Hippo",
    "street1": "Broadway 1",
    "city": "New York",
    "state": "NY",
    "zip": "10007",
    "country": "US",
    "phone": "+1 555 341 9393",
    "email": "mrhippo@goshippo.com"
}

parcel = {
    "length": "5",
    "width": "5",
    "height": "5",
    "distance_unit": "in",
    "weight": "2",
    "mass_unit": "lb"
}

shipment = shippo.Shipment.create(
    object_purpose = 'PURCHASE',
    address_from = address_from,
    address_to = address_to,
    parcel = parcel,
    async = False
)
require_once('lib/Shippo.php');
Shippo::setApiKey("{TEST_TOKEN}");

$fromAddress = array(
    'object_purpose' => 'PURCHASE',
    'name' => 'Shawn Ippotle',
    'street1' => '215 Clayton St.',
    'city' => 'San Francisco',
    'state' => 'CA',
    'zip' => '94117',
    'country' => 'US',
    'phone' => '+1 555 341 9393',
    'email' => 'shippotle@goshippo.com'
);

$toAddress = array(
    'object_purpose' => 'PURCHASE',
    'name' => 'Mr Hippo"',
    'street1' => 'Broadway 1',
    'city' => 'New York',
    'state' => 'NY',
    'zip' => '10007',
    'country' => 'US',
    'phone' => '+1 555 341 9393',
    'email' => 'mrhippo@goshippo.com'
);

$parcel = array(
    'length'=> '5',
    'width'=> '5',
    'height'=> '5',
    'distance_unit'=> 'in',
    'weight'=> '2',
    'mass_unit'=> 'lb',
);

$shipment = Shippo_Shipment::create( array(
    'object_purpose'=> 'PURCHASE',
    'address_from'=> $fromAddress,
    'address_to'=> $toAddress,
    'parcel'=> $parcel,
    'async'=> false
    )
);
var shippo = require('shippo')('{TEST_TOKEN}');

var addressFrom  = {
    "object_purpose": "PURCHASE",
    "name": "Shawn Ippotle",
    "street1": "215 Clayton St.",
    "city": "San Francisco",
    "state": "CA",
    "zip": "94117",
    "country": "US",
    "phone": "+1 555 341 9393",
    "email": "shippotle@goshippo.com"
};

var addressTo = {
    "object_purpose": "PURCHASE",
    "name": "Mr Hippo",
    "street1": "Broadway 1",
    "city": "New York",
    "state": "NY",
    "zip": "10007",
    "country": "US",
    "phone": "+1 555 341 9393",
    "email": "mrhippo@goshippo.com"
};

var parcel = {
    "length": "5",
    "width": "5",
    "height": "5",
    "distance_unit": "in",
    "weight": "2",
    "mass_unit": "lb"
};

shippo.shipment.create({
    "object_purpose": "PURCHASE",
    "address_from": addressFrom,
    "address_to": addressTo,
    "parcel": parcel,
    "async": false
}, function(err, shipment){
    // asynchronously called
});
APIResource resource = new APIResource ('{TEST_TOKEN}');

// to address
Hashtable toAddressTable = new Hashtable();
toAddressTable.Add("object_purpose", "PURCHASE");
toAddressTable.Add("name", "Mr Hippo");
toAddressTable.Add("company", "Shippo");
toAddressTable.Add("street1", "215 Clayton St.");
toAddressTable.Add("city", "San Francisco");
toAddressTable.Add("state", "CA");
toAddressTable.Add("zip", "94117");
toAddressTable.Add("country", "US");
toAddressTable.Add("phone", "+1 555 341 9393");
toAddressTable.Add("email", "mrhippo@goshipppo.com");

// from address
Hashtable fromAddressTable = new Hashtable();
fromAddressTable.Add("object_purpose", "PURCHASE");
fromAddressTable.Add("name", "Ms Hippo");
fromAddressTable.Add("company", "San Diego Zoo");
fromAddressTable.Add("street1", "2920 Zoo Drive");
fromAddressTable.Add("city", "San Diego");
fromAddressTable.Add("state", "CA");
fromAddressTable.Add("zip", "92101");
fromAddressTable.Add("country", "US");
fromAddressTable.Add("email", "mshippo@goshipppo.com");
fromAddressTable.Add("phone", "+1 619 231 1515");
fromAddressTable.Add("metadata", "Customer ID 123456");

Hashtable parcelTable = new Hashtable ();
parcelTable.Add ("length", "5");
parcelTable.Add ("width", "5");
parcelTable.Add ("height", "5");
parcelTable.Add ("distance_unit", "in");
parcelTable.Add ("weight", "2");
parcelTable.Add ("mass_unit", "lb");

resource.CreateShipment(new Hashtable(){
	{ "address_to", toAddressTable},
	{ "address_from", fromAddressTable},
	{ "parcel", parcelTable},
	{ "object_purpose", "PURCHASE"},
	{ "async", false}});

New standard in shipping for enterprises



  • Trusted with millions of packages by...
  • Mercari
  • Shyp
  • MEMEBOX
  • GoDaddy
  • Trello

Mercari

Mercari is an app that lets you buy or sell anything from a phone or tablet by taking a photo of the item.

With Shippo, Mercari is able to offer sellers the ability to create shipping labels right in the app.

By taking advantage of Shippo’s shipping API, Mercari provides three weight-based shipping options to their sellers - making shipping very simple. They are also able to manage their community-experience by automatically sending buyers tracking information once the seller has mailed their package.

Shippo has helped Mercari make shipping a streamlined experience buyers and selleres, while the tracking API allows Mercari to get complete visibility into seller peformance.

Shyp

Shyp is an on-demand courier pick-up, and professional packaging company.

Shyp uses Shippo to automatically get rates from multiple carriers, and print shipping labels at its warehouses.

Shyp accepts orders from their app, and sends shipment information directly to their fulfillment center to be processed, same-day. Weight, dimensions, and other information about the item are then sent to the Shippo API and a shipping label is generated.

Shippo helps power Shyp by providing them with a way to quickly get real-time shipping rates and automatically generate shipping labels.

Memebox

Memebox is the Korean makeup and skincare e-commerce store.

Memebox uses Shippo to get real-time carrier rates, and purchase shipping labels.

Memebox started by connecting to Shippo through Magento. At Memebox grew and implemented a warehouse management system, Shippo was plugged into its WMS. The operations team can create shipping labels, track shipments, and manage parcels all from one place.

Shippo powers thousands of packages sent by Memebox every day.

GoDaddy

GoDaddy lets you host, build, and run your own online store from one platform.

Shippo is GoDaddy’s official shipping partner, providing merchants with a simple dashboard for creating, tracking, and managing their shipments.

GoDaddy connects to the Shippo API through an order endpoint, and syncs all store orders directly to the Shippo app. In a click of a button, merchants are able to automatically create their own Shippo account, pre-populated with all their GoDaddy orders. Merchants then use the Shippo dashboard to purchase shipping labels.

Shippo provides GoDaddy merchants with an simple, automated shipping process.

Trello

Trello is a project management plaform actively used by over 1.1M users around the world.

Trello decided to display the current status of packages, any stops it's made along its journey, and the estimated date of arrival, into its platform if someone added a tracking number to one of its cards. At the start, Trello built their own carrier integrations, but after a few months decided to use Shippo's tracking API instead.

Trello uses the webhooks functionality of the Shippo tracking API to be notified when any of the packages its users are tracking had a status change. They no longer have to poll carriers for updates, but instead get push-noficiation only when necessary. Relying on our trackign API also allowed them to use support more carriers than they could have done in-house.