API Integration Setup: 1-2 days

Etsy × PrintHub — Fulfillment via the Etsy Open API

Since 2022 Etsy has offered a full REST API (Open API v3). We pull new orders automatically, produce them in Hamburg and push the tracking number back to Etsy via createReceiptShipment.

Overview

Etsy's Open API v3 offers full access to receipts (orders), transactions and shipping tracking. PrintHub uses OAuth 2.0 for secure access, pulls new orders via `getShopReceipts` and, after production, pushes the tracking number back through `createReceiptShipment`. You additionally register PrintHub as an official "Production Partner" in your shop — this meets Etsy's transparency rules and builds buyer trust.

Benefits

Why Etsy with PrintHub?

Fully automated via the Etsy Open API v3

No CSV chaos, no Zapier required. A direct OAuth connection between your Etsy shop and PrintHub — orders flow into production within minutes.

Automatic tracking push-back to Etsy

As soon as DHL picks up the shipment, we send the tracking number along with the matching carrier code to Etsy via `createReceiptShipment`. Buyers see the status in the Etsy dashboard.

Made in Germany for Etsy-DE compliance

Etsy requires transparency about the place of production. "Made in Germany" is a selling point — and legally cleaner for EU buyers than Asian drop-shipping.

GDPR-compliant with EU shipping

All customer data is stored on servers in Germany. DHL shipping inside the EU in 2–4 business days — no customs, no VAT chaos.

Setup

Live in 1-2 days

Step by step — from zero to your first automated order.

  1. 01

    Create an Etsy developer account and app

    Register at developers.etsy.com and create an app. You receive an API key (`x-api-key` header) and can configure OAuth scopes. Fulfillment requires `transactions_r` and `transactions_w`.

  2. 02

    Connect the OAuth 2.0 flow with PrintHub

    PrintHub provides a connector that handles the OAuth flow with your Etsy shop. Once approved inside Etsy the shop is connected — access and refresh tokens are stored encrypted in your PrintHub account.

  3. 03

    Map products and SKUs

    In your PrintHub dashboard you assign Etsy listings to matching PrintHub products. Custom personalization fields (custom text, design URL, name) are pulled automatically from Etsy's `variations` and `personalization` fields.

  4. 04

    Register the production partner on Etsy

    In your Etsy shop go to Shop Manager → Settings → Production Partners and add PrintHub. This meets Etsy's transparency rules and is mandatory for personalized products.

  5. 05

    Enable automatic order sync

    PrintHub polls `getShopReceipts` every 5 minutes (or via webhook where available). New orders land automatically in fulfillment — tracking is reported back to Etsy via `createReceiptShipment` after shipment.

Features

What this integration can do

  • Etsy Open API v3 with OAuth 2.0
  • Automatic receipt polling (`getShopReceipts`)
  • Tracking push-back via `createReceiptShipment`
  • Custom personalization fields from Etsy variations
  • Etsy Production Partner listing including logo and description
  • Optional Commercial API approval support
Code sample

Get started right away

How PrintHub pulls new orders from your Etsy shop and reports the DHL tracking number back (happens automatically in the background).

javascript api.print-hub.com
// Teil 1: Neue, unversandte Bestellungen aus Etsy abholen
const receipts = await fetch(
  `https://openapi.etsy.com/v3/application/shops/${shopId}/receipts?was_shipped=false&limit=25`,
  {
    headers: {
      'x-api-key': process.env.ETSY_APP_KEY,
      Authorization: `Bearer ${accessToken}`,
    },
  },
).then((r) => r.json());

// → PrintHub legt die Bestellungen automatisch an (POST /api/orders)

// Teil 2: Nach Produktion & DHL-Versand — Tracking zurück an Etsy melden
await fetch(
  `https://openapi.etsy.com/v3/application/shops/${shopId}/receipts/${receiptId}/tracking`,
  {
    method: 'POST',
    headers: {
      'x-api-key': process.env.ETSY_APP_KEY,
      Authorization: `Bearer ${accessToken}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      tracking_code: '00340434161094015901',
      carrier_name: 'dhl-germany',
      send_bcc: true,
    }),
  },
);
Frequently asked

What partners often ask us

Do I need Commercial API access from Etsy?
Personal Access is enough for up to 5 of your own shops. If PrintHub is to act as a third-party app for multiple independent sellers, Commercial Access would be required — which we are currently applying for with Etsy. For single shops this already works today.
What about Etsy's rate limits?
Etsy allows 10 requests per second and 10,000 per day per app by default. PrintHub polls only every 5 minutes and batches write operations — the limits are not a bottleneck.
How are Etsy personalizations (custom names, texts) transferred?
Etsy delivers them as `personalization` and `variations` fields on each receipt transaction item. We map them automatically to PrintHub's custom fields (line1–line10, motiv1–motiv5) according to your product configuration.
How do returns work?
Returns go directly to PrintHub in Hamburg. Full refund on production defects; for customer returns your own Etsy return policy applies. You handle refund transactions on the Etsy side yourself — we only reverse the production cost.
Which carriers are supported for tracking?
DHL Germany (`dhl-germany`), DHL Express (`dhl-express`), Deutsche Post (`deutsche-post`). Etsy's carrier list covers more than 200 providers — every one we ship with is included.

Ready to connect Etsy with PrintHub?

In a 30-minute call we go over your setup, catalog and volume — and send you out with a concrete roadmap.