Treez is a cannabis retail technology platform delivering point-of-sale, payments, ecommerce, loyalty, and analytics for dispensaries. An unofficial API lets you programmatically pull customers, products, inventory (stock), tickets/orders, and invoices—and push updates like new customer profiles, order tickets, and payments back into Treez—even where the official Open APIs require Authorized Partner approval.

Treez is a cannabis retail technology platform that delivers point-of-sale, payments, ecommerce, loyalty, and analytics software purpose-built for dispensaries. Retailers use Treez to ring up sales, process payments through TreezPay, run online menus and delivery, manage loyalty programs, and track inventory and compliance—then extend their stack through Treez Open APIs and a Partner Marketplace rather than a closed all-in-one suite.
Core product areas include:
Common data entities:
Dispensaries run mission-critical retail and compliance workflows on Treez daily, but turning them into reliable API-driven automation is non-trivial:
Supergood reverse-engineers authenticated browser flows and Treez's Open API surface to deliver a resilient, normalized API layer for your Treez account—across POS, payments, ecommerce, and inventory—without waiting on lengthy partner onboarding.
Use Treez with AI agents: Treez MCP Server →
Book a 30-minute session to confirm your Treez modules, store locations, and authentication model.
We deliver a production-ready Treez adapter tailored to your account, locations, and entitlements.
Go live with continuous monitoring and automatic adjustments as Treez evolves.
Authentication
/authenticateVerify your client_id and API key through the Authorization API and obtain an OAuth 2.0 bearer token for downstream calls.
Customers
/customersSearch customers by ID, email, name, driver's license, or phone, and filter by signup or last-update date; includes caregivers.
Customers
/create_customerCreate a new customer profile, or merge duplicate records, in the Customer API.
Products
/productsRetrieve product catalog records, categories, and pricing for a dispensary location.
Tickets
/ticketsGet tickets (orders) by ticket ID, order number, or status, filtered by customer, creation, closed, or last-update date.
Tickets
/create_ticketCreate a new order ticket with line items; update it separately with payment to complete the two-step ticket lifecycle.
- Pull customer and caregiver profiles from the Customer API into your CRM or data warehouse - Push new and merged customer records back into Treez to keep loyalty profiles deduplicated - Stream signup and last-update changes to downstream marketing and loyalty tools
- Create order tickets programmatically from ecommerce, delivery, or kiosk front-ends - Update tickets with payment in the two-step flow and capture per-ticket tax breakouts - Sync closed-ticket status and line items to analytics and accounting systems
- Pull stock levels per dispensary location from the Stock API - Reconcile product, category, and pricing data against menus and ecommerce platforms - Trigger reorder and low-stock alerts from real-time inventory webhooks
- Sync invoices and payment records from the Invoice API into accounting and ERP tools - Match TreezPay transactions against tickets for revenue reporting - Surface tax totals and fees for compliance and bookkeeping
Authentication
OAuth 2.0 bearer tokens plus a per-partner client_id header, verified through the Authorization API and handled in a managed session
Connectivity
Treez Open APIs (Customer, Product, Ticket, Stock, Invoice) plus authenticated browser flows where partner access is gated
Response format
Normalized JSON across Customer, Product, Ticket, Stock, and Invoice objects with per-ticket tax breakouts
Rate limits
Adaptive throttling tuned to the 10 TPS per-dispensary-location cap on Products, Tickets, and Customer APIs
Session management
Automatic OAuth token refresh, client_id replay, and credential rotation
Data freshness
Near real-time pulls for tickets, customers, and stock with optional scheduled batch syncs
Security
Encrypted credential vault, scoped access tokens, SOC 2-aligned controls, and audit logging
Webhooks
Event callbacks for customer, ticket, product, and inventory changes
Latency
Sub-second reads on cached entities; multi-second writes when posting tickets and payments
Throughput
Horizontally scaled workers sized to multi-location dispensary volume within per-location TPS limits
Reliability
Retry, backoff, and idempotency keys for ticket creation, payment updates, and customer merges
Adaptation
Continuous monitoring of Treez Open API releases, Partner Marketplace changes, and account-specific configuration drift
No. Supergood works with your existing Treez account and authenticated sessions. Formal Authorized Partner registration and a partner-issued client_id are only required when you consume the official Open APIs directly—Supergood can deliver a working API layer without waiting on that onboarding.
Yes. Supergood normalizes data across the Customer, Product, Ticket, Stock, and Invoice APIs so you integrate policy, catalog, order, inventory, and billing entities through one consistent surface.
Supergood applies adaptive throttling per dispensary location to stay within the 10 TPS cap on Products, Tickets, and Customer APIs, so multi-store operators can run high-volume syncs without hitting Treez-side limits.
Supergood models Treez's lifecycle exactly: a ticket is created first, then updated with payment in a separate call. We capture per-ticket tax breakouts and respect that paid tickets are immutable and partial payments are unsupported.
Yes. Supergood consumes Treez webhooks for customer, ticket, product, and inventory events, with near real-time pulls and optional scheduled batch syncs for downstream systems.