# Connect Digital Humani to Printful and automate your tasks

## Why integrate Digital Humani with Printful

The Digital Humani to Printful integration helps you sync data, automate manual tasks, and keep your stack aligned — without writing code.

### Plant a tree with every Shopify order automatically

When an order is placed in Shopify, MESA sends the corresponding request to Digital Humani and plants a tree on your brand's behalf. Every sale contributes to reforestation without anyone manually tracking or submitting planting requests.

### Give customers proof of their environmental impact

When a tree is planted through Digital Humani, MESA updates the customer's Shopify record and can trigger a Klaviyo email with the details. Your customers see the direct result of their purchase without your team doing anything by hand.

### Scale your reforestation impact with customer milestones

When a customer hits a threshold in Shopify — a spend level, a loyalty tier, a repeat purchase — MESA plants additional trees through Digital Humani on their behalf. Your sustainability program grows with your most engaged customers, not just your order volume.

### Send Shopify orders to Printful for fulfillment automatically

When an order is placed in Shopify, MESA routes it to Printful with the right product details, variants, and shipping information already attached. Your print-on-demand fulfillment starts the moment a customer checks out without anyone manually submitting the order.

### Keep Shopify product and variant data in sync with Printful

When a product is added, updated, or repriced in Shopify, MESA reflects the change in Printful. Your fulfillment partner always works from accurate product data without a manual sync step between your store and your print provider.

### Update Shopify the moment Printful ships an order

When Printful generates a tracking number and marks an order as shipped, MESA writes the update back to Shopify and triggers any downstream actions — a Klaviyo notification, a customer tag, a loyalty point. Your post-purchase workflow starts the moment Printful ships, not when someone checks the dashboard.

## Build any Digital Humani and Printful automation

MESA helps you connect apps to automate repetitive tasks. A trigger is an event that starts a workflow, and actions are the steps that occur when it's running.

###### Order Canceled

Starts when an order is canceled.

###### Order Created

Starts when an order is created.

###### Order Failed

Starts when an order has failed.

###### Order Updated

Starts when an order is updated.

###### Package Returned

Starts when a package is returned.

###### Package Shipped

Starts when a package is shipped.

###### Add File

Upload a new file to the library by providing URL of the file.
- Type
- ID
- URL
- Options
- Hash
- Filename
- Mime Type
- Size
- Width
- Height
- Dpi
- Status
- Created
- Thumbnail URL
- Preview URL
- Visible

###### Approve Design

Uses the confirm hash of an approval sheet to approve a design and remove the hold on an order.
- Message

###### Calculate Shipping Rates

Obtain a list of available shipping options and rates for a given list of products.
- Code
- Result

###### Calculate Tax Rate

Calculate sales tax rate for a given address if required.
- Code
- Result

###### Cancel Order

Cancel a pending order or draft. Charged amount is returned to the store owner's credit card.
- ID
- External ID
- Store
- Status
- Shipping
- Shipping Service Name
- Created
- Updated
- Recipient
- Items
- Branding Items
- Incomplete Items
- Costs
- Retail Costs
- Pricing Breakdown
- Shipments
- Gift
- Packing Slip

###### Change Packing Slip

Modifies packing slip information of the currently authorized Printful store.
- Code
- Result

###### Confirm Draft for Fulfillment

Approve a draft order for fulfillment. Store owner's credit card is charged when the order is submitted for fulfillment.
- ID
- External ID
- Store
- Status
- Shipping
- Shipping Service Name
- Created
- Updated
- Recipient
- Items
- Branding Items
- Incomplete Items
- Costs
- Retail Costs
- Pricing Breakdown
- Shipments
- Gift
- Packing Slip

###### Create Mockup Generation Task

Create an asynchronous mockup generation task.
- Variant Ids
- Format
- Width
- Product Options
- Option Groups
- Options
- Files
- Product Template ID

###### Create New Sync Product

Create a new sync product together with its sync variants.
- Sync Product
- Sync Variants

###### Create Order

Create a new order and optionally submits it for fulfillment.
- ID
- External ID
- Store
- Status
- Shipping
- Shipping Service Name
- Created
- Updated
- Recipient
- Items
- Branding Items
- Incomplete Items
- Costs
- Retail Costs
- Pricing Breakdown
- Shipments
- Gift
- Packing Slip

###### Create Sync Variant

Create a new sync variant for an existing sync product.
- ID
- External ID
- Sync Product ID
- Name
- Synced
- Variant ID
- Retail Price
- Currency
- Is Ignored
- Sku
- Product
- Files
- Options
- Main Category ID
- Warehouse Product Variant ID

###### Delete Product Template

Remove a product template.
- Success

###### Delete Sync Product

Remove a sync product with all of its sync variants.
- Sync Product
- Sync Variants

###### Delete Sync Variant

Remove a single sync variant.
- Sync Variant
- Sync Product

###### Disable Webhook Support /Webhooks

Removes the webhook URL and all event types from the store. Method returns current webhook configuration after the update.

###### Estimate Order Costs

Calculates the estimated order costs including item costs, print costs, shipping, and taxes.
- Costs
- Retail Costs

###### Get List of Approval Sheets

Obtain a list of approval sheets confirming suggested changes to files of on hold orders.
- ID
- Status
- Confirm Hash
- Submitted Design
- Recommended Design
- Approval Sheet

###### Get List of Available Thread Colors from Provided Image URL

Obtain a list of colors in hexadecimal format.
- 0

###### Get List of Categories

Obtain a list of catalog categories available in Printful.
- ID
- Parent ID
- Image URL
- Size
- Title

###### Get List of Countries

Obtain a list of countries and states that are accepted by Printful.
- Code
- Name
- States

###### Get List of Countries for Tax Calculation

Obtain a list of countries that requires sales tax calculation.
- Code
- Result

###### Get List of Layout Templates

Obtain a list of templates that can be used for client-side positioning.
- Version
- Min Dpi
- Variant Mapping
- Templates
- Conflicting Placements

###### Get List of Orders

Obtain a list of orders from your store.
- ID
- External ID
- Store
- Status
- Shipping
- Shipping Service Name
- Created
- Updated
- Recipient
- Items
- Branding Items
- Incomplete Items
- Costs
- Retail Costs
- Pricing Breakdown
- Shipments
- Gift
- Packing Slip

###### Get List of Product Variant Print Files

Obtain a list of print files available for products variants.
- Product ID
- Available Placements
- Printfiles
- Variant Printfiles
- Option Groups
- Options

###### Get List of Products

Obtain a list of products available in Printful.
- ID
- Main Category ID
- Type
- Type Name
- Title
- Brand
- Model
- Image
- Variant Count
- Currency
- Files
- Options
- Is Discontinued
- Avg Fulfillment Time
- Description
- Techniques

###### Get List of Sync Products

Obtain a list of sync product objects from your custom Printful store.
- ID
- External ID
- Name
- Variants
- Synced
- Thumbnail
- Thumbnail URL
- Is Ignored

###### Get List of Templates

Obtain a list of templates.
- Items

###### Get List of Warehouse Products

Obtain a list of warehouse products from your store.
- ID
- Name
- Status
- Currency
- Image URL
- Retail Price
- Variants

###### Get Scopes for Token /Oauth/Scopes

Returns a list of scopes associated with the token

###### Get Webhook Configuration /Webhooks

Returns configured webhook URL and list of webhook event types enabled for the store

###### Retrieve Basic Information About a Store

Grab all details about a store's basic information.
- ID
- Type
- Name

###### Retrieve Basic Information About Multiple Stores

Grab all details about multiple store's basic information. 
- ID
- Type
- Name

###### Retrieve Category

Grab all details about the category.
- ID
- Parent ID
- Image URL
- Size
- Title

###### Retrieve File

Grab all details about a file.
- Type
- ID
- URL
- Options
- Hash
- Filename
- Mime Type
- Size
- Width
- Height
- Dpi
- Status
- Created
- Thumbnail URL
- Preview URL
- Visible

###### Retrieve Mockup Generation Task Result

Grab all details about an asynchronous mockup generation task result.
- Task Key
- Status
- Error
- Mockups
- Printfiles

###### Retrieve Order

Grab all details about an order.
- ID
- External ID
- Store
- Status
- Shipping
- Shipping Service Name
- Created
- Updated
- Recipient
- Items
- Branding Items
- Incomplete Items
- Costs
- Retail Costs
- Pricing Breakdown
- Shipments
- Gift
- Packing Slip

###### Retrieve Product

Grab all details about a specific product and a list of variants for the product.
- Product
- Variants

###### Retrieve Product Size Guide

Grab all details about the size guide for a specific product.
- Product ID
- Available Sizes
- Size Tables

###### Retrieve Product Template

Grab all details about a product template.
- ID
- Product ID
- External Product ID
- Title
- Available Variant Ids
- Option Data
- Colors
- Sizes
- Mockup File URL
- Placements
- Created At
- Updated At

###### Retrieve Sync Product

Grab all details about a single sync product and its sync variants.
- Sync Product
- Sync Variants

###### Retrieve Sync Variant

Grab all details about a single sync variant.
- Sync Variant
- Sync Product

###### Retrieve Variant

Grabs all details about a specific variant and its product.
- Variant
- Product

###### Retrieve Warehouse Product Data

Grab all details about a warehouse product data.
- ID
- Name
- Status
- Currency
- Image URL
- Retail Price
- Variants

###### Set Up Webhook Configuration /Webhooks

Allows to enable webhook URL for the store and select webhook event types that will be sent to this URL. Note that only one webhook URL can be active for a store, so calling this method disables all existing webhook configuration. Setting up the webhook requires passing IDs for products that need to be monitored for changes. Stock update webhook will only include information for specified products. These product IDs need to be set up using params property. Method returns current webhook configuration after the update.

###### Update Order

Modify an unsubmitted order and optionally submits it for the fulfillment.
- ID
- External ID
- Store
- Status
- Shipping
- Shipping Service Name
- Created
- Updated
- Recipient
- Items
- Branding Items
- Incomplete Items
- Costs
- Retail Costs
- Pricing Breakdown
- Shipments
- Gift
- Packing Slip

###### Update Sync Product

Modifies an existing sync product with its sync variants.
- Sync Product
- Sync Variants

###### Update Sync Variant

Modifies an existing sync variant.
- ID

###### Count Enterprise Trees Planted

Retrieve the number of trees planted by an enterprise for the specified date range
- Count

###### Count Trees for a User

Retrieve the number of trees planted by a specific user
- Enterprise ID
- User
- Count

###### Get List of Projects

Obtain a list of reforestation projects
- ID
- Name
- Reforestation Project Description En
- Reforestation Project State En
- Reforestation Project Country En
- Reforestation Project Website En
- Reforestation Company Name En

###### Plant Trees

Send a request to plant trees for a chosen reforestation project
- Uuid
- Created
- Tree Count
- Enterprise ID
- Project ID
- User

###### Retrieve Project

Grab all details about a single reforestation project
- Created
- Updated
- ID
- Reforestation Company Name En
- Reforestation Company Name Fr
- Reforestation Company Address En
- Reforestation Company Address Fr
- Reforestation Company Website En
- Reforestation Company Website Fr
- Reforestation Project Country En
- Reforestation Project Country Fr
- Reforestation Project Description En
- Reforestation Project Description Fr
- Reforestation Project Image URL En
- Reforestation Project Image URL Fr
- Reforestation Project State En
- Reforestation Project State Fr
- Reforestation Project Website En
- Reforestation Project Website Fr
