Common snags and how to read them. When in doubt, verify against NetSuite and Sunrise before regenerating anything; regenerating can create duplicates.
<aside> 🚧
“PO generation is already running for {region/project}.” A job is locked because one is in flight. Wait for the current job to finish (watch the progress view); don't start a second run for the same target.
</aside>
PO created but the tool still shows “Needs PO.” A recurring gotcha: the PO and email can succeed while the project's PO link doesn't get written back, so the list keeps showing Needs PO. Before regenerating, open the project in NetSuite/Sunrise and confirm whether the PO already exists. If it does, don't regenerate (you'll duplicate it); flag it to engineering to fix the link.
A generated PO is missing a part or has the wrong quantity. There's no line-by-line edit for residential POs. If the Sales Order is right, UPDATE PO re-syncs the PO with it and sends CED the update; if the PO was already received, use an add-on order (below). If the Sales Order itself is wrong, it needs a change order, or report the project ID and the item to engineering.
"Project … held back: scope mismatch" (log: "No PO for …: The Sales Order does not match the BOM and design…"). The Sales Order, the finalized BOM and the Sunrise design disagree on modules, microinverters or batteries, so no PO was cut for that project. The rest of a batch still runs. File a change order in the proposal tool (or have the designer re-finalize a corrected BOM), then run it again. Don't edit the Sales Order in NetSuite to get past it. Only the admin can override, with a reason. See 3. Generating Purchase Orders (Residential), Scope check before every PO.
Finalize BOM fails with "This BOM does not match the Sales Order". Same check, at Finalize: nothing was written to the Sales Order. The designer files a change order in the proposal tool, then finalizes again once the Sales Order is updated.
"PO … has already been received and cannot be updated." UPDATE PO can't change a received PO. Use the Add-on order panel under the message: enter a reason and click CREATE ADD-ON ORDER to order only what the Sales Order needs beyond what's already been ordered. If it says the POs already cover every line, the Sales Order has to change first.
An email says "BOM changed modules or batteries on open PO …". A designer re-finalized a BOM after the PO went out. The PO wasn't changed. Confirm with the vendor, then run UPDATE PO.
The PO used an old BOM, or ignored a BOM someone just uploaded. Check the progress log for the BOM source: line. If it says BOM Tool, the run used the designer's last Finalize BOM; a PDF uploaded within 15 minutes of that finalize does not override it, so ask the designer to re-finalize. If it says Sunrise BOM PDF, the newest PDF in the Sunrise BOM category was read, the same as before the BOM Tool existed. See 3. Generating Purchase Orders (Residential) → Where the BOM comes from.
A scheduled job isn't on the region's list. The list shows projects with an Installation, Tesla Powerwall, Electrician or Shutdown job in Skedulo from today through the end of next week. On Thursday and Friday it also reaches Monday to Wednesday of the week after. The region comes from the project's Sales Order location, not from Sunrise, so a project whose Sales Order is at another branch shows under that branch. If the job is later than the window, it appears when the window catches up; to cut its PO now, use Generate PO for Manual Project with the project ID.
Wrong ship-to address on a PO. For sites with multiple projects, the ship-to can resolve to the wrong address. Verify the shipping address on the SO/PO; corrections are handled by engineering.