ReadyDocs

ReadyDocs is a document-generation API that enables customers to create standardized packing slips using predefined templates.

ReadyDocs provides a library of approximately 140 packing slip templates, including generic templates that can be used for customer orders. Documents are generated programmatically by submitting order and shipment data to the ReadyDocs API.

Note: ReadyDocs is a subscription-based feature, and usage is metered. This feature must be enabled by EasyPost Support before it can be used. Requests are authenticated using an EasyPost API key.

Supported document types include:

  • packing_slip

Supported output types include:

  • PDF: Returns the generated PDF.
  • JSON: Returns the generated PDF encoded in Base64 within a JSON response.
  • S3: Returns a JSON response containing a link to the generated PDF stored in S3.

ReadyDocs Object

object
string
Object type. Always “Document”.
mode
string
"test" or ”production”
reference
string
Status of the document generation request (e.g., ”created”)
status
string
Carrier associated with the rate (e.g., USPS, FedEx).
document_type
string
The generated document type. (e.g., ”packing_slip”)
format
string
Output format of the generated document (e.g., ”pdf”)
file_url
string
URL where the generated document can be accessed.
messages
array
Messages related to document generation.
created_at
datetime
Timestamp when the document was created.
ReadyDocs Object
{
  "object": "Document",
  "mode": "test",
  "reference": null,
  "status": "created",
  "document_type": "packing_slip",
  "format": "pdf",
  "file_url": "https://eformz-doclib.s3.us-west-2.amazonaws.com/files/doclib/20260813/packslip_1786654215217.pdf",
  "messages": [],
  "created_at": "2026-08-13T20:50:14.870Z"
}

ReadyDoc Order Object

ship_to
object
Destination recipient details for the order.
ship_to.address
object
Destination address object.
ship_to.address.name
string
Recipient name.
ship_to.address.company
string
Recipient company name.
ship_to.address.street1
string
Primary street address line.
ship_to.address.street2
string
Secondary street address line.
ship_to.address.city
string
Destination city.
ship_to.address.state
string
Destination state or province.
ship_to.address.zip
string
Destination postal code.
ship_to.address.country
string
Destination country (ISO 2-letter code).
ship_to.address.phone
string
Recipient phone number.
ship_to.address.email
string
Recipient email address.
ship_from
object
Origin sender details for the order.
ship_from.address
object
Origin address object.
ship_from.address.name
string
Sender name.
ship_from.address.company
string
Sender company name.
ship_from.address.street1
string
Primary street address line.
ship_from.address.street2
string
Secondary street address line.
ship_from.address.city
string
Origin city.
ship_from.address.state
string
Origin state or province.
ship_from.address.zip
string
Origin postal code.
ship_from.address.country
string
Origin country (ISO 2-letter code).
ship_from.address.phone
string
Sender phone number.
ship_from.address.email
string
Sender email address.
bill_to
object
Billing recipient details for the order.
bill_to.address
object
Billing address object.
bill_to.address.name
string
Billing contact name.
bill_to.address.street1
string
Primary street address line.
bill_to.address.city
string
Billing city.
bill_to.address.state
string
Billing state or province.
bill_to.address.zip
string
Billing postal code.
bill_to.address.country
string
Billing country (ISO 2-letter code).
bill_to.address.phone
string
Billing contact phone number.
bill_to.address.email
string
Billing contact email address.
customer_service
object
Customer support contact details displayed on the document.
customer_service.phone
string
Customer support phone number.
customer_service.email
string
Customer support email address.
customer_service.website
string
Customer support website URL.
customer_id
string
Customer identifier used by the merchant.
customer_order
string
Merchant-provided customer order identifier.
order_number
string
Human-readable order number displayed on the packing slip.
po_number
string
Purchase order number associated with the order.
invoice_number
string
Invoice number associated with the order.
warehouse_id
string
Identifier for the fulfillment warehouse.
ship_date
string
Date the order ships (for example, MM/DD/YYYY).
order_date
string
Date the order was placed (for example, MM/DD/YYYY).
delivery_date
string
Expected delivery date (for example, MM/DD/YYYY).
ship_method
string
Shipping method shown on the packing slip.
pay_method
string
Payment method shown on the packing slip.
order_message
string
Optional note or message printed for the recipient.
sub_total
string
Subtotal amount for ordered items.
sales_tax
string
Sales tax amount.
shipping_handling
string
Shipping and handling amount.
credit
string
Credit amount applied to the order.
total
string
Total order amount.
currency_uom
string
Currency unit of measure symbol (for example, '$').
sales_person
string
Sales representative associated with the order.
order_lines
object
Container for line item details.
order_lines.line
array of objects
Array of order line items.
order_lines.line.item_id
string
Line item identifier.
order_lines.line.upc
string
UPC for the line item.
order_lines.line.merchant_sku
string
Merchant SKU for the line item.
order_lines.line.customer_part_number
string
Customer-specific part number for the item.
order_lines.line.description
string
Line item description.
order_lines.line.item_style
string
Variant or style details for the item.
order_lines.line.qty
object
Quantity breakdown for the line item.
order_lines.line.qty.ord
integer
Quantity ordered.
order_lines.line.qty.ship
integer
Quantity shipped.
order_lines.line.qty.bo
integer
Backordered quantity.
order_lines.line.qty.uom
string
Unit of measure for quantities.
order_lines.line.unit_price
string
Unit price for one item.
order_lines.line.total_price
string
Total price for the line item.
order_lines.line.gift_message
string
Gift message for the line item, when present.
ReadyDoc Order Object
{
  "ship_to": {
    "address": {
      "name": "Dr. Steve Brule",
      "company": "EasyPost",
      "street1": "417 Montgomery Street",
      "street2": "5th Floor",
      "city": "San Francisco",
      "state": "CA",
      "zip": "94104",
      "country": "US",
      "phone": "4155559999",
      "email": "dr_steve_brule@example.com"
    }
  },
  "ship_from": {
    "address": {
      "name": "EasyPost",
      "company": "EasyPost",
      "street1": "417 Montgomery Street",
      "street2": "5th Floor",
      "city": "San Francisco",
      "state": "CA",
      "zip": "94104",
      "country": "US",
      "phone": "4155559999",
      "email": "support@example.com"
    }
  },
  "bill_to": {
    "address": {
      "name": "Dr. Steve Brule",
      "street1": "179 N Harbor Dr",
      "city": "Redondo Beach",
      "state": "CA",
      "zip": "90277",
      "country": "US",
      "phone": "8575551212",
      "email": "dr_steve_brule@example.com"
    }
  },
  "customer_service": {
    "phone": "4155559999",
    "email": "support@example.com",
    "website": "https://www.example.com"
  },
  "customer_id": "customer_123",
  "customer_order": "order_123",
  "order_number": "123456",
  "po_number": "PO-123456",
  "invoice_number": "INV-123456",
  "warehouse_id": "warehouse_123",
  "ship_date": "08/11/2026",
  "order_date": "08/10/2026",
  "delivery_date": "08/14/2026",
  "ship_method": "Ground",
  "pay_method": "Credit Card",
  "order_message": "Thank you for your order.",
  "sub_total": "$25.00",
  "sales_tax": "$2.00",
  "shipping_handling": "$5.00",
  "credit": "$0.00",
  "total": "$32.00",
  "currency_uom": "$",
  "sales_person": "Steve Brule",
  "order_lines": {
    "line": [
      {
        "item_id": "item_123",
        "upc": "012345678905",
        "merchant_sku": "SKU-123",
        "customer_part_number": "PART-123",
        "description": "T-shirt",
        "item_style": "Blue / Medium",
        "qty": {
          "ord": 2,
          "ship": 2,
          "bo": 0,
          "uom": "each"
        },
        "unit_price": "$12.50",
        "total_price": "$25.00",
        "gift_message": "Happy Birthday!"
      }
    ]
  }
}

Create a Document

Creates a packing slip using a predefined ReadyDocs template.

The project identifies the packing slip template to generate. ReadyDocs supports vendor-specific templates as well as generic packing slip templates.

Request Parameters

project
REQUIRED
i.e. "hsn_8x11"
The name of the predefined ruleset to apply.
output_type
REQUIRED
i.e. "PDF"
Output type for the generated document. Supported values are `PDF`, `JSON`, and `S3`.
order
Data used to populate the packing slip template.
shipping_label
i.e. "format": "PNG"
Optional shipping label data for supported templates.
print_commands
i.e. "print": "size": "4x6"
Optional print instruction data for supported templates.
image
i.e. "image_format": "JPEG"
Optional image data for supported templates.
POST /alpha/readydocs/packslip
1curl -X POST https://api.easypost.com/alpha/readydocs/packslip \
2  -u "EASYPOST_API_KEY": \
3  -H 'Content-Type: application/json' \
4  --data-binary @- <<'JSON'
5{
6  "pack_slip_data": {
7    "pack_slip": {
8      "project": "hsn_8x11",
9      "output_type": "S3",
10      "order": {
11        "ship_to": {
12          "address": {
13            "name": "Dr. Steve Brule",
14            "company": "EasyPost",
15            "street1": "417 Montgomery Street",
16            "street2": "5th Floor",
17            "city": "San Francisco",
18            "state": "CA",
19            "zip": "94104",
20            "country": "US",
21            "phone": "4155559999",
22            "email": "dr_steve_brule@example.com"
23          }
24        },
25        "ship_from": {
26          "address": {
27            "name": "EasyPost",
28            "company": "EasyPost",
29            "street1": "417 Montgomery Street",
30            "street2": "5th Floor",
31            "city": "San Francisco",
32            "state": "CA",
33            "zip": "94104",
34            "country": "US",
35            "phone": "4155559999",
36            "email": "support@example.com"
37          }
38        },
39        "bill_to": {
40          "address": {
41            "name": "Dr. Steve Brule",
42            "street1": "179 N Harbor Dr",
43            "city": "Redondo Beach",
44            "state": "CA",
45            "zip": "90277",
46            "country": "US",
47            "phone": "8575551212",
48            "email": "dr_steve_brule@example.com"
49          }
50        },
51        "customer_service": {
52          "phone": "4155559999",
53          "email": "support@example.com",
54          "website": "https://www.example.com"
55        },
56        "customer_id": "customer_123",
57        "customer_order": "order_123",
58        "order_number": "123456",
59        "po_number": "PO-123456",
60        "invoice_number": "INV-123456",
61        "warehouse_id": "warehouse_123",
62        "ship_date": "08/11/2026",
63        "order_date": "08/10/2026",
64        "delivery_date": "08/14/2026",
65        "ship_method": "Ground",
66        "pay_method": "Credit Card",
67        "order_message": "Thank you for your order.",
68        "sub_total": "$25.00",
69        "sales_tax": "$2.00",
70        "shipping_handling": "$5.00",
71        "credit": "$0.00",
72        "total": "$32.00",
73        "currency_uom": "$",
74        "sales_person": "Steve Brule",
75        "order_lines": {
76          "line": [
77            {
78              "item_id": "item_123",
79              "upc": "012345678905",
80              "merchant_sku": "SKU-123",
81              "customer_part_number": "PART-123",
82              "description": "T-shirt",
83              "item_style": "Blue / Medium",
84              "qty": {
85                "ord": 2,
86                "ship": 2,
87                "bo": 0,
88                "uom": "each"
89              },
90              "unit_price": "$12.50",
91              "total_price": "$25.00",
92              "gift_message": "Happy Birthday!"
93            }
94          ]
95        }
96      },
97      "shipping_label": {
98        "data": "test",
99        "format": "PNG",
100        "encoding": "base64"
101      },
102      "print_commands": {
103        "print": {
104          "type": "text",
105          "encoding": "base64",
106          "encoding_character_set": "UTF-8",
107          "data": "test",
108          "size": "4x6",
109          "format": "ZPL"
110        }
111      },
112      "image": {
113        "char_set": "ISO-8859-1",
114        "image_data": "/9j/4AAQS.......QhCA/",
115        "image_format": "JPEG"
116      }
117    }
118  }
119}
120JSON
Response
1{
2  "object": "Document",
3  "mode": "test",
4  "reference": null,
5  "status": "created",
6  "document_type": "packing_slip",
7  "format": "pdf",
8  "file_url": "https://eformz-doclib.s3.us-west-2.amazonaws.com/files/doclib/20260813/packslip_1786654215217.pdf",
9  "messages": [],
10  "created_at": "2026-08-13T20:50:14.870Z"
11}