Ontario Cannabis Store
Last updated: 8/27/24
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 Field | Yellow Dog Data |
---|---|
ocsSku | VendorPN for first vendor (must be OCS vendor) |
upcAndBarcode | UPC1 else SKU |
retailerCRSA | Store's OCS Retailer CRSA attribute |
retailerHashkey | Store's OCS Retailer Hash Key attribute |
inventoryQuantityOnHand | Item On Hand in the Store(s) with the corresponding CRSA and Hash Key as of the time the sync is run |
Retail | ItemRetail in the Store(s) with the corresponding CRSA and Hash Key as of the time the sync is run |
inventoryBookValue | inventoryQuantityOnHand * 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 Field | Yellow Dog Data |
---|---|
RecordKey | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
retailerCRSA | Store's OCS Retailer CRSA attribute |
retailerHashkey | Store's OCS Retailer Hash Key attribute |
ocsSku | VendorPN for first vendor (must be OCS vendor) |
upcAndBarcode | UPC1 else SKU |
inventoryEventType | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
posTransactionTimeStamp | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
posSalesTransactionId | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
posTransactionLineId | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
inventoryQuantityChange | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
inventoryValueChange | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
soldAtPrice | Dependent on adjustment type (sales, transfers, purchases, manualAdjustmsnts, physicals) |
counterPartyCRSA | Dependent 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