Documentation / Answers / Troubleshooting
Troubleshooting
Audience: all customers. Topic: troubleshooting. Last reviewed 2026-11-07.
Short answer. Read the sentence on the screen and use the matching fix below. If the screen says something this page does not list, quote that sentence. Do not guess a cause from a screen you have not opened.
Dashboard
"No sources connected yet." Connect a source. On Setup, "Active, awaiting usage" means the connection is in and no usage has arrived.
"Error Loading Dashboard" or "Showing cached data (may be outdated). Click Refresh to update." Use Refresh. If it remains, sign out and back in, then open Dashboard again. Cached numbers are the last copy, not a new total.
"Ledger summary failed." Open Agents & allocation directly. The rest of Dashboard can be fine while that card fails.
"Hard cap active — ingest suspended until {date}." New usage waits until the date on the banner. Do not reconnect the source to clear it. "Estimated overage accrual this period" is a separate banner. It is an estimate for the period, not a posted journal.
Unattributed and idle
"N% of spend still open" or "Unattributed — open inbox →". On Agents & allocation → Unattributed, assign the row or add a rule for vendor or model. Rules do not move spend that already has an agent. Seat CSV rows allocate to a department, not an agent.
"Nobody used it." That is idle capacity. It is not unattributed spend. Do not add the two figures together.
Invoices
"Confirm the billing period before this invoice can be booked." On Add billing data, set Invoice date, Billing period start, and Billing period end, then check I confirm this billing period. The note says "The billing period below starts as the month before this date. You can change it." Changing a date clears the confirmation.
"The billing period end is before the start." Put the end on or after the start, then confirm again.
"Possible duplicate invoice." The message is "This looks like the same {vendor} invoice for {start} to {end} (${total}). Replace the existing upload, or add it as a separate invoice?" Replace the existing upload replaces the earlier file. Add as separate books this file as well.
Connector overlap. "Duplicates what the connector pulls" holds the file as a control total. "Covers spend the connector misses" books the gap. Keep booked keeps a held file in the ledger. Leave a connector's own bill as the control total.
"Choose a CSV file" or rows flagged (not booked) on a seat file. The CSV needs user_email or user_name, product, monthly_cost, and department. A product named only Copilot is flagged and not booked. Flagged rows do not appear on Dashboard.
Teams
"No Microsoft tenant is connected. Meridian works without one." An owner or admin chooses Connect a Microsoft tenant and signs in as a tenant administrator, then Connect this tenant. This link is only for Meridian inside Teams or Copilot. Meridian sign-in does not use it.
"Your company uses Meridian, but you don't have access yet." Allow everyone in our tenant is off until an owner turns it on. Otherwise an admin invites the person from Team.
"Ask your Meridian admin for access to spend questions." The person can open the agent and cannot ask a spend question. An owner, an admin, or a person with finance rights asks that question.
"Only an organization owner or admin can connect a Microsoft tenant." Sign in as an owner or admin.
"This Microsoft tenant is already connected to another Meridian organization." Or "This organization is already connected to a Microsoft tenant." One tenant links to one organization.
Attributed, Unattributed, and Total all $0.00. The tenant link does not pull spend. Connect a source that retrieves spend. On Integrations, "Key valid · no spend source" means the key is validation only.
Organization, team, and keys
"Choose an organization." The sentence is "Your account belongs to more than one company. Choose one in the organization menu to continue." Pick the company. The page reloads into it.
"Last owner." Team will not remove the only owner. Invite another owner and have them accept, then change the first one.
"Invitation not found" or "Invitation has expired." An invitation lasts 7 days. After it expires, send a new one. While a row says waiting to accept, do not send a second invitation for the same email.
"Enter at least one allowed domain (e.g. acme.com)." Add the domain on Settings → SSO and save. "Organization Required" means there is no company yet.
"Invalid integration key" or "Integration key scope violation." Usage ingest keys and Discovery event keys are different keys. Metrics reads need metrics:read. Discovery events need events:write. Do not reuse one key for both. Do not paste the key into a ticket. Create a new key on the screen you are using and update the caller.
Reports and discovery
"Failed to generate report. Please try again." The same sentence names the card that failed. Choose that report again. An empty ledger can still generate an Agent Spend Report. Read Last generated before treating the button as down.
Shadow AI setup card. Issue a Discovery event key that includes events:write, then wait for events. "No discoveries in this filter yet" means the filter is empty, not that the connection failed.
"Direct posting to Business Central isn't available yet." Export the journal and post it in Business Central. "No locked chargeback periods" means lock a month on Chargeback before expecting a run in the list.