I wrote some code which addresses this problem. I added some javascript variables to track which line items needed considered for removal each time the Order Total Preview was generated. I added a parameter to the set_line_item() javascript function which is called from modules outside of the payments module, but the default behavior should remain from the existing calls.
Using this patch I was able to setup taxes for 2 different zip codes and while switching the zip code on the checkout page it would show Tax A, Tax B, or no tax.
| Attachment | Size |
|---|---|
| workflow_tax_adjust.diff | 3.51 KB |

