Overview

Our Ontario Cannabis Store (OCS) integration posts inventory events (item on hand adjustments) and inventory positions (on hands) of designated Ontario Cannabis items to Ontario Cannabis Store’s API on a daily basis.

Sync Approach

This interface uses our OntarioCannabisStoreConsole.

Sync Frequency

By default the sync is scheduled to run daily, after the usual end of the day for the site to post the previous day’s events (item on hand adjustments).

Configuration

Retailer CRSA and Hash Key are assigned to Yellow Dog Stores.

  • The same CRSA and Hash Key can be assigned to multiple Yellow Dog Stores.

  • A single Yellow Dog Store can only have one CRSA and Hash Key (multiple per Store is NOT supported)

Requirements

Ontario Cannabis Store (OCS)

  • Retailer CRSA(s)

  • Retailer Hash Key(s)

Client

  • Confirm which Retailer CRSA and Hash Key got to which YD Store(s)

  • Ensure that all items needed to report to OCS are available to the stores that will be mapped for this integration

  • Ensure that all items needed to report to OCS have the OCS Vendor assigned as their primary vendor in YD

  • Ensure that all items that need to be exported to OCS have the OCS Item SKU as the OCS Vendor VPN

Yellow Dog

  • OCS ClientID - This is the same for all of our OCS Integrations

  • OCS ClientSecret - This is the same for all of our OCS Integrations

  • OCS Scope - This is the same for all of our OCS Integrations

  • Code for the OCS Vendor in YD (vendor code from YDInv)

  • Populate OCSRetailerCRSA Store Attribute with Retailer CRSA for the store(s) that should be mapped

  • Populate OCSRetailerHashKey Store Attribute with Retailer Hash Key for the store(s) that should be mapped

  • Ensure that required Manual Adjustment Accounts exist in the database

    • Manual Adjustment Account names MUST include "Destroyed", "Lost/Theft", "Other Reductions", and "Other Additions"

Data Exchange

The same data that is exported to OCS's API can be viewed via Standard Reports \ OCS \ Inventory Position and Standard Reports \ OCS \ Inventory Events.

Item Position

Provides the current on hand and on hand retail for the OCS items based on the selected datetime for the report, and the time the sync runs when posting data to OCS.

Item Position FieldYellow Dog Data
ocsSkuVendorPN for first vendor (must be OCS vendor)
upcAndBarcodeUPC1 else SKU
retailerCRSAStore's OCS Retailer CRSA attribute
retailerHashkeyStore's OCS Retailer Hash Key attribute
inventoryQuantityOnHandItem On Hand in the Store(s) with the corresponding CRSA and Hash Key as of the time the sync is run
RetailItemRetail in the Store(s) with the corresponding CRSA and Hash Key as of the time the sync is run
inventoryBookValueinventoryQuantityOnHand * retail

Item Events

Provides all item adjust events for the OCS items for the selected date (date only; NOT datetime); Day = 00:00:00 to 23:59:59. When running the sync, the previous day’s events are posted to OCS.

Item Event FieldYellow Dog Data
RecordKeyDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
retailerCRSAStore's OCS Retailer CRSA attribute
retailerHashkeyStore's OCS Retailer Hash Key attribute
ocsSkuVendorPN for first vendor (must be OCS vendor)
upcAndBarcodeUPC1 else SKU
inventoryEventTypeDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
posTransactionTimeStampDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
posSalesTransactionIdDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
posTransactionLineIdDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
inventoryQuantityChangeDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
inventoryValueChangeDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
soldAtPriceDependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)
counterPartyCRSADependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals)

Accounting Export Ability

This integration does not support the export of tender or tax data to an accounting system.

Reviewing Item Details

Users can run the OCS Inventory Events and OCS Inventory Positions reports in YDInv to see/verify what is exported to Ontario Cannabis Store.

  • NOTE: these reports MUST be filtered to the OCS Vendor ONLY.

  • These reports are added to YDInv when the initial setup for the integration has been completed by Yellow Dog’s Integration Installer.

Additional Information

Limitations

  • For the OCS Reports in YD, user must select the OCS Vendor ONLY in the vendor filter (8/27/24)

    • There is no way for us to auto-filter this; the report will throw an error if multiple vendors are selected

  • Receipts are NOT included in Events; even if the Receipt has been converted to an Invoice, the item adjusts related to a receipt are NOT included in the events (8/27/24)

  • Retail Prices appear in the report/export based on the datetime of any retail price changes (8/27/24)

    • i.e., if a retail price is found to have been incorrect and is changed, that retail price change would only appear on the report/export when filtered to a datetime AFTER that retail price was changed.

      • i.e., price changed today will NOT be reflected on data for yesterday