Skip to main content

Dutchie POS

Dutchie POS is a point-of-sale platform for cannabis retail. Its API exposes a dispensary's operational data — products, inventory, customers, employees, discounts, purchase orders, and register transactions — so you can sync catalog and sales data with other systems. Nexla connects to the Dutchie POS API to ingest these records as a data source and to write products, customers, transactions, and purchase orders back as a destination.

Dutchie POS icon

Power end-to-end data operations for your Dutchie POS API with Nexla. Our bi-directional Dutchie POS connector is purpose-built for Dutchie POS, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Dutchie POS or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Dutchie POS workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

The Dutchie POS API uses HTTP Basic authentication. Nexla sends your Location Key as the Basic Auth username and your Integrator Key as the Basic Auth password. Each key is scoped to a specific store/location and integration, so you will receive a distinct set of keys per location you intend to connect.

Dutchie issues API keys through its support team, and for security only an authorized account administrator on the Dutchie account can request them. To obtain your keys:

  1. Confirm that you are (or are working with) an authorized administrator on the Dutchie POS account. Dutchie will not release API keys to unauthorized parties, and does not provide keys over chat or phone.

  2. Submit an API key request to Dutchie through the Dutchie Help Center, or have your account administrator contact Dutchie POS support at possupport@dutchie.com, identifying the location(s) and the integration the keys will be used for.

  3. Wait for Dutchie to provision the keys. Dutchie typically returns requested API keys within a few business days.

  4. Store the returned Location Key and Integrator Key securely. Treat the Integrator Key as a secret — it acts as the Basic Auth password for all API requests.

For complete details on the key request process and API authentication, see the Dutchie POS API documentation and the Dutchie POS API key request process.

Authenticate

Credentials required

FieldRequiredSecretDescription
Location KeyYesNoDutchie POS Location Key, used as the HTTP Basic username. Provided per store/location by Dutchie.
Integrator KeyYesYesDutchie POS Integrator Key, used as the HTTP Basic password. Issued to the integrating application.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your Dutchie POS Location Key in the Location Key field. This value is used as the HTTP Basic Auth username and identifies the store/location the credential connects to.

  4. Enter your Dutchie POS Integrator Key in the Integrator Key field. This value is used as the HTTP Basic Auth password and authenticates your integration.

    The Integrator Key is sensitive and should be kept confidential. If a key is compromised, request a replacement from Dutchie POS support and update the credential in Nexla.

  5. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Dutchie POS connector tile, then select the credential that will be used to connect to Dutchie POS, and click Next; or, create a new Dutchie POS credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Dutchie POS endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

List Products

Retrieve the product catalog, including SKU, pricing, category, brand, strain, and lab results.

  • Optionally set Modified Since (UTC) to return only products modified after a given UTC timestamp (ISO 8601). Leave it blank for a full sync.
  • Optionally set Active Only to filter by active status. Leave it blank to return both active and inactive products.

List Customers

Retrieve customer records with page-based pagination.

  • This endpoint pages through results automatically. Nexla follows page-based pagination to fetch all available customer records.

List Inventory

Retrieve current stock levels across products, optionally including lab results and per-room quantity breakdowns.

  • Optionally set Include Lab Results to include lab test results and cannabinoid profiles in the response.
  • Optionally set Include Room Quantities to include a quantity breakdown by storage room in the response.

List Employees

Retrieve the employee directory for the location.

List Discounts

Retrieve published discounts configured for the location.

  • Optionally set Include Inactive to include deleted/inactive discounts in the response.
  • Optionally set Include Inclusion/Exclusion Rules to include product, category, and brand inclusion and exclusion rules in the response.

List Register Transactions

Retrieve register (point-of-sale) transaction/sales history for reporting and reconciliation.

  • Optionally set Modified Since (UTC) to return only transactions modified after a given UTC timestamp (ISO 8601).
  • Optionally set Modified Before (UTC) to return only transactions modified before a given UTC timestamp (ISO 8601).

List Purchase Orders

Retrieve purchase orders, optionally filtered by creation date range and including line-item detail.

  • Optionally set Created From to return purchase orders created on or after a given date (ISO 8601).
  • Optionally set Created To to return purchase orders created on or before a given date (ISO 8601).
  • Set Include Item Details to include detailed line items for each purchase order. This defaults to true.

List Product Categories

Retrieve the location's product category reference list.

List Brands

Retrieve the brand reference list.

List Strains

Retrieve the cannabis strain reference list.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Dutchie POS data sources can also be manually configured to ingest data from any valid Dutchie POS API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Dutchie POS data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Dutchie POS destination, and select the Send to Destination option from the menu. Select the Dutchie POS connector from the list of available destination connectors, then select the credential that will be used to connect to Dutchie POS, and click Next; or, create a new Dutchie POS credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Dutchie POS endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

Create/Update Product

Create a new product or update an existing product in the catalog.

  • Each record from your Nexset is sent as a JSON request body to the Dutchie POS product endpoint. The record structure must match the fields the Dutchie POS API expects for a product.

Create/Update Customer

Create a new customer or update an existing customer record.

  • Each record from your Nexset is sent as a JSON request body to the Dutchie POS customer endpoint. The record structure must match the fields the Dutchie POS API expects for a customer.

Create Transaction

Create a new anonymous point-of-sale transaction (order).

  • Each record from your Nexset is sent as a JSON request body to create an anonymous transaction. The record structure must match the fields the Dutchie POS API expects for a transaction.

Create/Update Purchase Order

Create a new purchase order or update an existing one, adjusting inventory on receipt.

  • Each record from your Nexset is sent as a JSON request body to the Dutchie POS purchase order endpoint. The record structure must match the fields the Dutchie POS API expects for a purchase order.

Manual configuration

Dutchie POS destinations can also be manually configured to send data to any valid Dutchie POS API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Dutchie POS endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Dutchie POS endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.