Skip to main content
How-to

Correcting Tax on a Processed Order

Once an order reaches Processed status, UltraCart locks its tax amount. The order's Tax page offers no editable tax field, and changing a line item's taxable flag does not produce a new tax total. This page explains why that happens, how to confirm you are hitting the lock rather than a defect, and the one supported way to correct the tax.

You are most likely to run into this in three situations: reconciling a manually recreated order against a payment that was captured outside UltraCart, fixing a taxable flag that was set wrong before checkout, or discovering that a tax exempt customer was charged tax.

Quick diagnostics

SymptomLikely causeWhere to check
The Tax page shows a tax amount with no way to change itThe order is Processed or Processed (Pending Clearance)Order detail, Payment Status
Changing a line item's taxable flag leaves the order's tax total unchangedTax was calculated and filed through the tax engine when the order processed, and a flag change does not trigger a fresh calculationOrder detail, Items tab, then the Tax page
Recalculating completes without an error, but the tax total is identicalRecalculation only runs for orders that have not processed yetNo new tax engine estimate appears in the provider log
A recreated order cannot be made to match a tax amount from an external paymentThe recreated order was saved as Processed before the correct tax was setCompare the order's locked tax against the amount on the original capture
An order for a tax exempt customer was charged taxThe customer checked out as a guest, or the exemption was never configured on the tax provider's sideWhether the order is linked to a customer profile, then that profile's Taxes tab

Why tax is locked once an order is Processed

Processed means payment was captured. By that point, an integrated tax engine has normally already filed a transaction record against the order. Editing the tax in place afterwards would leave UltraCart displaying one figure while the tax engine reports another, which breaks the audit trail you depend on when you file and remit.

For that reason the Tax page on a Processed order exposes no editable tax amount, and toggling an item's taxable flag starts no new calculation.

note

This is expected behavior, not a defect. There is no supported way to override or recalculate tax on a Processed order in place.

Common issues

The tax amount is not editable on a Processed order

Symptoms: The Tax page for an order shows a fixed tax amount and offers no field to change it.

Root cause: The order is in Processed status, so UltraCart has locked the calculated tax.

Diagnosis: Check the order's Payment Status. If it reads Processed or Processed (Pending Clearance), the tax amount is locked.

Solution: Refund the order and create a replacement with the corrected item and tax setup. See Refund and recreate the order.

Changing a taxable flag does not update the tax total

Symptoms: Marking a line item taxable or non-taxable changes the taxable subtotal on the Items tab, but the order's tax total stays where it was even after you recalculate.

Root cause: Recalculation re-invokes the tax engine only for orders that have not processed yet. On a Processed order it sends no new estimate request.

Diagnosis: Look for a new estimate or transaction entry in the tax provider log immediately after you recalculate. If nothing appears, no recalculation ran. The Sales Tax page describes where those logs live.

Solution: Refund and recreate the order rather than editing it in place.

A recreated order will not match a prior payment's tax

Symptoms: A replacement order created to reconcile a payment that never synced into UltraCart cannot be made to match that payment's tax amount, because the replacement was already processed with a different tax figure, often zero.

Root cause: The same lock applies to the replacement. Once it is Processed, its tax cannot be edited toward a target figure.

Diagnosis: Compare the target tax amount from the original payment or capture against the locked tax on the replacement order.

Solution: Set the item configuration and tax correctly before you create a replacement order, because you cannot correct it afterwards. If one has already processed with the wrong tax, refund and recreate it.

A tax exempt customer was charged tax

Symptoms: A customer whose profile is marked Tax Exempt placed an order that collected sales tax, and the order has since processed.

Root cause: The exemption did not reach the tax calculation. Usually the customer checked out as a guest rather than logging in to their customer profile, so the profile's exempt status never applied. With Avalara, TaxJar, Sovos, or Anrok, it can instead mean the provider specific customer fields were blank, or no matching exempt customer record existed inside the provider's system.

Diagnosis: Check whether the order is linked to a customer profile and whether the customer logged in. Then open that profile's Taxes tab and confirm both Tax Exempt and the provider specific fields. Then check the tax provider log for the order: the request shows which customer code UltraCart sent, and the response shows the exempt amount the provider returned.

Solution: Repair the setup first, so the next order is right, then correct this order by refunding and recreating it. Tax Exempt Customers walks the three requirements in order.

Refund and recreate the order

This is the only supported correction path.

warning

Refunding and recreating a live customer order cannot be undone. Confirm item pricing, tax jurisdiction, and payment status first, and take particular care when you are reconciling against an external payment, where charging the customer twice or duplicating fulfillment are real risks.

  1. Confirm the correct item setup, pricing, and tax amount before you change anything. If the customer should be tax exempt, confirm their profile and provider side setup now and make sure they log in to that profile, because the replacement order locks its tax the same way this one did.
  2. Refund the Processed order. See How do I perform a Refund.
  3. Create a new order with the same items and the corrected tax and taxable settings. See Creating an order.
  4. If the corrected order should show a zero balance due, because payment was collected outside UltraCart, check that the payment and balance status match before you complete it.
  5. Confirm the new order shows the gross, tax, and total you expect, and that the correction triggered no duplicate fulfillment or customer notification.

Where to check

ToolWhat it tells you
Order detail, Payment StatusWhether the order is Processed, and therefore tax locked
Order detail, Tax pageOn a Processed order, the missing editable tax field confirms the lock. On an order that has not processed, the field is editable
Customer profile, Taxes tabWhether the customer is marked Tax Exempt and whether the provider specific customer fields are filled in
Tax provider logWhether a recalculation actually reached the tax engine. See Sales Tax for where each provider's log button sits
Tax engine dashboardThe filed transaction as the provider recorded it
Order historyA record of the refund and the replacement order, for later reconciliation

When to escalate

A locked tax amount is not an engineering defect, so do not file it as a bug. Escalate for human judgment when:

  • No original order exists to confirm the correct historical pricing before you recreate one.
  • You cannot tell whether a payment capture is a duplicate or a legitimate second charge.
  • The target tax amount does not match the tax engine's current rate for that jurisdiction, which can happen when the rate changed after the original sale.
  • The item or SKU that a replacement order should contain is ambiguous.

Include the affected order IDs, the target tax amount and where it came from, and what makes refund and recreate difficult for that particular order.

Was this page helpful?