PrepPort Global Customer API v1
Quick start OpenAPI JSON Postman Examples Open portal
For customer-owned OMS, ERP, Shopify middleware, and agencies

Connect your operations stack to PrepPort without copying orders by hand.

Use API keys and signed webhooks to create inbound shipments, fulfillment orders, QC inspections, product sourcing RFQs, support tickets, quote responses, and invoice payment-evidence records. Customers keep a visible Control Tower, receiving profile, First shipment guided start, Action center, inventory view, Activity timeline, and webhook delivery log.

Base URL
https://api.prepportglobal.com/api/v1

Create an API key in the customer portal. Keep it in a server-side secret manager and send it as a Bearer API key.

Five-step integration

Create a customer accountUse the PrepPort customer portal so API records are tied to the right company and account owner.
Create an API keyOpen API access, choose scopes, create the key, and store the full key immediately. PrepPort stores only a hash after creation.
Create one safe test recordStart with an ASN, fulfillment order, QC inspection, sourcing RFQ, or support ticket using a clear test reference.
Register a webhook endpointUse an HTTPS URL you control, store the signing secret once, and send a portal test delivery.
Move to production recordsMap customer SKUs, order numbers, destination fields, QC rules, payment evidence, and exception status into your own system.

Copy-ready quickstart

Download the Postman collection, import it into your private workspace, set `baseUrl` and `apiKey`, then run Control Tower before writing records.

Download Postman collection

Code examples

Use the English examples for cURL, Node.js, Python, CSV intake fallback, error handling, and webhook signature verification.

Open API examples

Sandbox-style test flow

Use `SANDBOX` references, create one ASN or fulfillment order, register a webhook endpoint, send a portal test delivery, and verify the Control Tower before using real customer orders.

Authentication

Send the key as `Authorization: Bearer pp_live_...` or use `X-PrepPort-API-Key`. Browser code should not hold API keys.

curl https://api.prepportglobal.com/api/v1 \
  -H "Authorization: Bearer $PREPPORT_API_KEY"

Scopes

Use only the scopes your integration needs. Start read-only, then add write scopes for ASNs, fulfillment, QC, sourcing, support, quotes, invoices, or operations files.

read:status read:inventory read:operations write:fulfillment write:support write:operations

Webhook safety

Webhook payloads are customer-safe and signed. PrepPort excludes API keys, full webhook secrets, encrypted ciphertext, passwords, internal notes, payment instructions, and other customer records.

Create an inbound ASN

Use this before goods leave the supplier. It feeds receiving, expected inbound inventory, QC needs, labeling, packaging, and warehouse handoff.

curl -X POST https://api.prepportglobal.com/api/v1/asns \
  -H "Authorization: Bearer $PREPPORT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "asnNumber": "ASN-1001",
    "supplierName": "Supplier One",
    "trackingNumber": "SF123456789",
    "expectedArrival": "2026-07-05",
    "items": [
      {"sku": "BOTTLE-750", "quantity": 240, "cartonCount": 12}
    ],
    "serviceNotes": "Inbound QC, FNSKU labels, carton marks"
  }'

Create a drop-shipping order

Use this for Shopify, FBM, TikTok Shop, Walmart, eBay, Etsy, WooCommerce, samples, or manual outbound orders.

curl -X POST https://api.prepportglobal.com/api/v1/fulfillment-orders \
  -H "Authorization: Bearer $PREPPORT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platform": "shopify",
    "orderType": "drop_shipping",
    "orderNumber": "SHOP-1001",
    "shipToCountry": "United States",
    "addressSummary": "Seattle WA 98101",
    "shippingService": "Standard tracked",
    "items": [
      {"sku": "BOTTLE-750", "quantity": 2, "name": "Insulated bottle"}
    ]
  }'

Create a QC inspection

Use this before supplier final payment, before FBA prep, during inbound receiving, or when returns and defects need evidence.

curl -X POST https://api.prepportglobal.com/api/v1/qc-inspections \
  -H "Authorization: Bearer $PREPPORT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "inspectionNumber": "QC-1001",
    "inspectionType": "pre_shipment",
    "sku": "BOTTLE-750",
    "productName": "Insulated bottle",
    "sampleSize": 80,
    "inspectionCriteria": "Check quantity, logo, barcode, packaging, carton marks"
  }'

Create a sourcing RFQ

Use this for product inquiry, supplier quotes, sample coordination, procurement support, QC plan, and fulfillment handoff.

curl -X POST https://api.prepportglobal.com/api/v1/sourcing-rfqs \
  -H "Authorization: Bearer $PREPPORT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "product": "Insulated bottle",
    "quantity": "500",
    "targetUnitPrice": "USD 4.50",
    "destination": "United States",
    "platform": "Shopify and Amazon FBA",
    "requirements": "Supplier quotes, samples, QC plan, and fulfillment handoff",
    "needProcurement": true,
    "needDropShipping": true
  }'

Create a support ticket

Use this for shipment status, warehouse/QC exceptions, billing/payment review, compliance review, and account-support follow-up.

curl -X POST https://api.prepportglobal.com/api/v1/support-tickets \
  -H "Authorization: Bearer $PREPPORT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Check carton photos before release",
    "message": "Please review first inbound photos and advise if more evidence is needed.",
    "issueType": "shipment_status",
    "relatedReference": "ASN-1001"
  }'

Quote and invoice actions

Customers can accept, request changes, or decline an approved quote. Customer payment evidence starts staff verification; it does not mark invoices paid, credit wallet balance, or release goods automatically.

curl -X POST https://api.prepportglobal.com/api/v1/quotes/QUOTE_ID/response \
  -H "Authorization: Bearer $PREPPORT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"decision":"accepted","message":"Accepted for first batch."}'

Customer API v1 endpoints

GET /api/v1Summary, counts, Control Tower, receiving profile, First shipment guided start, Action center, inventory, wallet retention cockpit, Shopify order sync cockpit, and customer account context.
GET /api/v1/control-towerOne customer-safe health view for first shipment readiness, actions, exceptions, inbound/QC, fulfillment and drop shipping, inventory, sourcing/procurement, quotes, invoices, integrations, and support.
GET /api/v1/receiving-profileWarehouse receiving profile, customer code, receiving reference, carton marking format, pre-shipment checklist, and whether suppliers should hold or ship.
summary.firstShipmentPlanCustomer-safe readiness checklist for the first operating workflow: account profile, service authorization, operating files, QC, inbound ASN, first order or sourcing request, commercial review, and optional Shopify/API setup.
summary.wallet.operationsCockpitWallet and referral reward cockpit covering top-up requests, payment evidence review, finance approval, wallet credit posting, customer actions, staff actions, and retention levers.
summary.shopify.syncCockpitShopify order sync cockpit covering store connection, paid-unfulfilled order import, SKU/inventory match, warehouse processing, tracking sync back to Shopify, and manual/API fallback.
GET /api/v1/action-centerPrioritized customer actions and blockers.
GET /api/v1/inventorySKU available, on-hand, reserved, inbound, low-stock, short, and reorder context.
GET/POST /api/v1/asnsInbound shipment notices before supplier or forwarder handoff.
GET/POST /api/v1/fulfillment-ordersDrop-shipping, outbound, sample, marketplace, and manual fulfillment orders.
GET/POST /api/v1/qc-inspectionsProduct inspection and QC requests.
GET/POST /api/v1/sourcing-rfqsProduct sourcing and procurement RFQs.
GET/POST /api/v1/support-ticketsTracked support and exception follow-up.
GET /api/v1/quotesApproved customer-visible quotes.
POST /api/v1/quotes/:id/responseAccept, request changes, or decline a quote.
GET /api/v1/invoicesInvoice and deposit request status.
POST /api/v1/invoices/:id/payment-evidenceSubmit customer payment evidence for staff verification.
GET /api/v1/shopify-connectionsShopify sync connection and webhook status.
GET /api/v1/integration-centerConnection readiness plus connectionPlanner planCards across Shopify, API keys, customer webhooks, manual/CSV fallback, first shipment setup, operations files, and open actions.
GET /api/v1/walletWallet balance, pending top-ups, referral state, and wallet retention cockpit.
GET /api/v1/operationsOperations files, customer reports, suppliers, SKUs, and standards.
POST /api/v1/csv-intakePreflight or apply CSV rows for bulk orders, ASNs, QC inspections, sourcing RFQs, SKU master, and supplier profiles without sending messages, collecting payment, releasing goods, or calling external platforms.

Webhook events

Register an HTTPS endpoint in the customer portal. PrepPort signs each event with `X-PrepPort-Signature: t=TIMESTAMP,v1=HMAC_SHA256` over `timestamp.body` using the one-time signing secret.

Webhook deliveries are logged in the customer portal; failed deliveries can be retried after the receiver is fixed, and duplicate events should be handled idempotently by your system.

asn.updatedInbound shipment created or updated.
fulfillment.updatedOutbound or drop-shipping order created or updated.
qc.updatedQC inspection created or updated.
sourcing.updatedSourcing RFQ created or updated.
support_ticket.updatedSupport ticket created or updated.
quote.updatedQuote response or quote status changed.
invoice.updatedInvoice status or payment evidence changed.
shopify.order_importedShopify order imported into PrepPort fulfillment.

Example webhook body

{
  "id": "whdel_...",
  "type": "fulfillment.updated",
  "createdAt": "2026-07-01T10:30:00.000Z",
  "account": {
    "id": "cust_...",
    "company": "Northstar Outdoor Goods",
    "email": "ops@example.com"
  },
  "subject": {
    "type": "fulfillment_order",
    "id": "ful_..."
  },
  "data": {
    "action": "created",
    "source": "customer_api_v1",
    "fulfillmentOrder": {
      "orderNumber": "SHOP-1001",
      "status": "open",
      "customerVisibleStatus": "Received by PrepPort Global."
    }
  }
}

Operational boundaries

API and portal actions can create operational records, customer-visible status, webhook deliveries, quote responses, and invoice payment-evidence items. They do not approve legal terms, confirm compliance, issue refunds, send payment instructions, mark invoices paid, credit wallet balances, release goods, or guarantee supplier commitments without staff review.

Developer assets

prepport-customer-api-openapi.jsonOpenAPI 3.1 spec for API-client generation and internal contract review.
prepport-customer-api-postman.jsonPostman v2.1 starter collection with placeholder variables and safe test payloads.
prepport-customer-api-examples.mdcURL, Node.js, Python, webhook verification, CSV fallback, error handling, and pilot sequence examples.
/customer-portal.html#apiaccessAPI key creation, webhook endpoint registration, test delivery, delivery log, and retry controls.

Ready to connect?

Start in the customer portal, create an API key, download the OpenAPI JSON or Postman collection, and create one SANDBOX test record before connecting production order flows.