Metrc troubleshooting: Error codes and resolutions - Dutchie POS

Troubleshoot Metrc errors and find resolutions for error codes in the POS.

As part of Dutchie's live integration with Metrc, some actions taken in Dutchie will be automatically reflected in Metrc.

When there is an error with an action you can use the traceability log to view the error code. This article serves as a troubleshooting guide to help identify and solve specific Metrc error codes and operation errors you may come across in the POS.

Topics include:

Things to consider

  • API Keys are issued directly from Metrc.
  • Always double-check the Metrc ID to ensure that it is valid and 24 characters long.
  • Ensure that your API Keys are valid and that the permissions are set up correctly, see Validate API Key.
  • Permissions for the API Key are the same permissions the user has in Metrc.
  • If all users' API Keys show as “failed,” it’s likely that a new API key will need to be generated from Metrc.

Failed Metrc key

Is the master Metrc key failing? 

  1. Are individual user keys required/being used? (check setting in Metrc > Settings > Require individual user keys). If user keys are required, the issue could be the individual user key failing vs the Metrc master key. 
  2. Verify your permissions. To validate, go to Settings > Integrations > Metrc > Validate key, see Update your Metrc API Key.

Discrepancy issues

Discrepancy related issues happen when inventory counts are off in Dutchie/Metrc. Below are some tips to help trouble different discrepancy issue:

  1. Integration Audit: Refresh packages (always use this FIRST to clear out any stale data). Go to Traceability > Integrations audit. Select the products, then click the Bulk Actions dropdown. Select Refresh Packages
  2. Avoid using “Syncing levels" as the first step in troubleshooting discrepancy issues.
    Note: This is essentially the same thing as making an adjustment on the inventory level. You should always figure out where the discrepancy came from before making adjustments. 
  3.  Deliver error codes. The error code 'Order Failed To Mark Ready for Delivery' can appear when there are discrepancies between inventory quantities in Dutchie POS and Metrc. When quantities are off, Metrc recognizes the insufficient quantities and fails to create a manifest.  
  4. When the Receipt Audit page loads, it checks our database for any transactions for a location with that timestamp and matches the results for display. Check the Receipt Audit to see if there are any sales that have not been posted to Metrc.
    • Another way to confirm if a Dutchie Receipt ID matches to a Metrc receipt ID is to go to Registers > Transactions > All transactions > receipt number (Dutchie) and the External ID (Metrc receipt number) will display confirming its posted to Metrc.
  5. If NOT in Batch Mode, check Product transaction history in Dutchie and compare this to the Package history export (PDF format) from Metrc. Compare side by side to see if the sales mirror. If the package history export from Metrc shows “Users” next to any of the sales instead of “API”, this means the sale was posted directly in Metrc as opposed to flowing through the integration (Dutchie to Metrc). 
    • If sales in Dutchie and in Metrc match, check the allocated Dutchie report for ghost carts. 
    • Look at the product journal in Dutchie. Maybe an adjustment was done in Dutchie only or vice versa. 
    • If sales/counts match in Dutchie and in Metrc you may to need to contact support. 
  6. If you are in Batch Mode, go to Traceability > Logs > Batch Mode, filter by Error status and you’ll be able to see the Dutchie Receipt ID that didn’t post to Metrc and the error/reason (see image):
    errror_status_logs.jpg

    Unreconciled Dutchie Receipt: Sales that haven’t posted to Metrc. 

    Unreconciled Metrc Receipt: Sales that are in Metrc but are not tied to sales in Dutchie (MAY need to be voided but not always). 

Add your email to the Metrc batch mode email list. You will receive notifications.

Batch mode errors

Batch mode attempts to post sales to Metrc up to 3 times before displaying an error. Some states cannot be in Batch mode and must operate in real-time. 

Common Batch Mode Errors What this means  Resolution 
"*** Warning *** The package \"1A4040300000CEE000048683\" will have a negative quantity after recording. Products were adjusted without the sales posting to Metrc. Product has to be re-adjusted. 
Patient Number is required, but was not specified No MMJID listed in patient profile.  Confirm MMJID is listed in patient profile and requeue transaction. 
Contents from Package 1A4010300007D66000046458 cannot be sold because it has been Finished Finished the product in Metrc before the sale posted. Reason for this, sales won’t post and get stuck in error in Batch Mode, EOM will come and operators will attempt reconcile and not realize they had transactions that didn’t post. 

Check with your regulator/state prior to taking any action to confirm if you can compliantly unfinish the impacted package in Metrc. Please attempt to re-queue the transactions from your Batch mode logs.

 

If any adjustments were made prior, will need to re-adjust in Metrc/Dutchie so that their Integration Audit doesn’t get impacted. 

METRC Bad Request-Timeout Expired.  Metrc could’ve blipped for a second and Dutchie didn’t get a successful response from Metrc.  Attempt to requeue transactions and see if any other errors display. 
METRC Unauthorized - Authorization has been denied for this request Metrc key is failing. Could also be individual user key failing.  Batch mode error will show the cashier/budtender name. This employee can log into Dutchie Backoffice, go to validate key tab, confirm if your key or the Metrc master key is failing. Regenerate a new key if needed in Metrc. 

Metrc error codes 

Error 

Explanation

How to resolve

Unable to get NewMETRCSalesSystem

Possible broken API Key.

Go to Settings > Integrations > Metrc > Validate Key and see if the key is valid.

Sales Delivery[delivery number] has already been Completed and cannot be edited.

The Delivery Transaction was completed already in Metrc, but not in Dutchie.

Have someone look into Metrc to who completed it and whether it was via the API (Dutchie) or a User (done directly in Metrc). Verify if this was completed intentionally or not and see if it can be opened/uncompleted in Metrc so it can process in Dutchie.

Could be in reference to either a POS Transaction or an Outbound Manifest

  • If a Manifest, then it would most likely be already accepted/received by the recipient. Have the recipient manifest it back to the sender so they can re-manifest out again. (All of these actions are gated by State Regs. I.e. MI cannot do outbound manifests from the Dispo/Retail Level.)

  • If a POS Transaction, then one of the items on the Receipt is Finished in Metrc. Have the dispensary admin look at Metrc tags on the receipt and un-finish this in Metrc after running this by their compliance team or the state.

Contents from Package [package ID] cannot be sold because it has been Finished.

Package is in Finished Status in Metrc

Run this by their compliance team or state and get guidance on whether they can unfinished this in Metrc so they can sell it in Dutchie.

"*** Warning *** The package \"[package ID]\" will have a negative quantity after recording.

The action attempting to be completed will bring the Package into a Negative Quantity in Metrc

Check both Dutchie and Metrc against your physical counts. Dispensary admin can use the Integration Recon tool to sync levels when they discover which system is correct.

Sales Receipt [number] does not exist in the current Facility

The receipt number is not associated with the License they are working on.

Check the Receipt in Metrc to see if they can find it in there (for this license) and verify the receipt number they are working with is accurate.

If this is in Batch Mode Logs, ask them to Re-queue the transaction.

Patient Number is required, but was not specified.

Medical Transaction where the Patient Number is missing and needs to be input.

Input Patient Number and try again.

Facility can not sell to Consumers.

MED Facility is trying to sell Rec Customers and is not authorized to do so in Metrc.

MED Facility is trying to sell Rec Customers and is not authorized to do so in Metrc

Facility can not sell to Patients.

Rec facility is trying to sell to a Medical customer type and not authorized in Metrc to do so.

They would need to check them out as a Rec customer after changing their profile to Rec.

Message:Authorization has been denied for this request.

Metrc Key is either invalidated (they do that randomly based on Metrc’s security protocols) or the key does not have the permissions in Metrc to complete this action.

If the API key is not valid anymore they will need to generate a new Key in Metrc and input it in Dutchie. Caveat is if they Require User Keys. It could be just one User Key that is bad or lacking permissions and needs to be updated in Metrc and input into Dutchie.

Contents from Package [package ID] cannot be sold because it is in Transit.

Package is on an outbound Manifest (Retail/Delivery or Wholesale).

Check to see if this item should be on an Outbound Manifest. If it has been received or Delivered they would need to get with the State or their Compliance Team to see if it can be manifested back adjusted/returned (on a Retail Delivery Transaction).

The Location \"Back Stock\" is invalid. Please ensure the name is correct.

Room does not exist in Metrc as it is listed in Dutchie.

The room must match exactly in Dutchie how it is in Metrc (including spelling, spacing, capitalization, etc.) - If they have Maintain Rooms set to yes under Integrations > Metrc > Cog Wheel > Settings > Maintain Rooms' they can go to Maintenance > Rooms set the Room Type to Default Room Type. Next go back to Integrations > Metrc > Cog Wheel > Synchronization > Select Push Rooms. - This will Push a Room to Metrc and give this room an External ID.

Driver Name was not specified.

Name of Driver Missing in Maintenance > Drivers.

Input a driver name and try again.

Driver Employee ID was not specified.

Employee ID/MMJID are missing from Maintenance > Drivers.

To resolve please input their MMJ State ID into this area, save and try this again

Driver Vehicle License Number was not specified.

Driver’s License Number missing from Maintenance > Drivers.

To resolve update the Driver’s License Number (State DMV License Number) and try again.

Vehicle Make was not specified.

Vehicle Make is not specified under Maintenance > Cars.

Have the dispensary admin input a Vehicle Make like Nissan, Toyota, etc. Save this info and try the action again with the Vehicle Make Input.

Vehicle Model was not specified.

Vehicle Model is not specified under Maintenance > Cars.

Input a Vehicle Model like Veyron, Pinto, Dart, or Prizm. Save this info and try the action again with the Vehicle Make Input.

Vehicle License Plate Number was not specified.

Vehicle License Plate is not specified under Maintenance > Cars

Input a Plate Number like B3TTERCALLSAUL, GOFAST, etc. and try again.

Recipient Address Street 1 was not specified.

First address line was not completed in the Delivery (Retail) Manifest or on a Wholesale Manifest.

This can be updated under the Wholesale Manifest or the Delivery Manifest (depending on the context). However. if they keep running into these issues they can also go into Maintenance > Form Validation and make these fields required.

Recipient Address City was not specified.

City was not completed in the Delivery (Retail) Manifest or on a Wholesale Manifest.

They need to input the City on the Retail or Wholesale Manifest and try again.

Recipient Address State was not specified.

State was not completed in the Delivery (Retail) Manifest or on a Wholesale Manifest.

They need to input the State on the Retail or Wholesale Manifest and try again.

Recipient Address Postal Code was not specified.

Postal code was not completed in the Delivery (Retail) Manifest or on a Wholesale Manifest.

They need to input the Postal Code on the Retail or Wholesale Manifest and try again.

Planned Route was not specified.

Route within the Wholesale or Delivery/Retail Manifest was not input.

Have the dispensary admin go back into the Manifest and Input a Route or click Get Directions. This will pull from Google Maps.

Estimated Departure Date is invalid or was not specified.

Estimated Departure Date was not input or is a date that is in the past or too far in the future used.

Check the date, adjust it, and try again.

Estimated Arrival Date is invalid or was not specified.

Estimated Arrival date was set for a date in the past or too far in the future.

Check the date, update it to a date that falls within what Metrc will allow.

Metrc Timeout - Metrc server did not reply in a timely manner

This is usually shown as a 408 Response under Integrations > Metrc > Cog Wheel > Logs.

It means Dutchie POS tried to hold the connection open with Metrc as long as we could and had to cut the connection due to a lack of response from Metrc

Wait and try the action again at a later time.

Error 503. The service is unavailable.

Any 500 errors mean Metrc is down.

If the dispensary is in a state that allows it, they may want to go on Batch Mode under Integrations > Metrc.

Dutchie will create a Ticket with Metrc, and Metrc will have to resolve this as it is an issue with their servers.

Metrc Timeout - Metrc server did not reply in a timely manner

Metrc is down.

If the dispensary is in a state that allows it, they may want to go on Batch Mode under Integrations > Metrc.

Dutchie will create a Ticket with Metrc, and Metrc will have to resolve this as it is an issue with their servers.

Count (20) is greater than Plant Batch Count (0).

Count in Dutchie for Plant Batch is higher than it is in Metrc.

Solution is to find out what actions (in Dutchie/Metrc) lead to this being 0 in Metrc and reach out to their Compliance Team/State to investigate.

404 - File or directory not found.</h2> <h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.

Metrc cannot find this item similar to not being able to find a web page on site. The resource they are looking for is not associated with their license.

They may want to look in Metrc to see if they can find this Metrc Tag, Batch, etc. and see if it exists in Metrc for the license they are working with in Dutchie.

The Unit of Measure "Grams" is invalid. Valid values are: Each.

Unit of Measurement (UoM) in Dutchie does match that of Metrc.

Go to Integration Recon and sync the levels.

Package [package ID] cannot be Finished because it's not empty.

Dutchie shows 0 on this package and Metrc shows a non-value.

Check and ensure which system is accurate and matches their physical counts. Adjust the package in LL or Metrc accordingly. They may need to only adjust in Metrc, but they need to look in why Metrc shows a positive quantity and Dutchie is at zero.

Error message: Order could not be completed: Error with integrated system: METRC: Metrc Bad Request: {"Message":"SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM."}

Departure time, arrival time, or driver information was not filled out when the delivery manifest was created.

In the Backoffice, go to Products > Manifests and locate the manifest. Select Actions > Edit driver and add the missing information.

For more information, see Create a manifest for a vendor return or internal transfer

Receiving error: Error updating product strain: Strain does not exist at the current facility when creating a product catalog and unable to proceed. 

This is caused due to the strain associated to this item not existing in Metrc.

You are able to troubleshoot and push strains to Metrc by navigating to Settings -> Integrations -> Metrc -> Sync, and click "Push Strains". After the strains sync, retry creation of the product catalog entry.

Error message: Error Creating Package 1A4000B0000A00D000000000. 

This is caused when Metrc is bypassed and the quantity doesn't match in Dutchie.

In the Metrc integration settings in the Backoffice, set Maintain Rooms to Yes. If items are split into two, check the integration audit to see if there is a discrepancy. Combine the items and refresh the integration audit.

Cannot be sold because the sold quantity exceeds the package quantity

 

Adjust the product quantity in Metrc to meet the 2x requirement.

Close the affected cart in Dutchie.

Immediately reduce the quantity in Metrc back to the accurate amount

Clearly document the reason for the temporary adjustment in Metrc using adjustment notes.

Error with integrated system: METRC Error finding package (Package ID) in METRC.

A scanned product does not exist in Metrc, but Dutchie POS expects it to because it's classified as cannabis in the Catalog. This may happen with hemp, CBD, or low-THC products that don't need to be tracked in Metrc.

Find the product in Products > Catalog in the Backoffice and set Cannabis product to No. Though the product may technically be cannabis or cannabis-derived, the Cannabis product setting in the Catalog denotes whether a product must be tracked in Metrc.

MetrcBrand field is required

Metrc enforces strict field requirements for certain product categories, and missing or hidden fields in Dutchie Backoffice cause syncing errors.

Enable Use Metrc Brands in the Metrc integration settings and ensure all required fields, like administration method and brand, are visible and populated in Dutchie Backoffice.

Wholesale price not associated with the transfer type selected.

When assigning a price on a non-wholesale transfer, only the transfer type Wholesale in Metrc will accept a price

Ensure transfer type “Wholesale” is selected

Learn more

Was this article helpful?