Version: eXtendRoyalties all versions
Audience: Administrator, User

Scenario

A royalty transaction was already created for an invoice. Later, you add or change invoice lines and want to know what happens the next time the royalty script runs.

What triggers a reprocess?

eXtendRoyalties evaluates royalties at the invoice level. When it runs, it compares the current invoice total to the total stored on the existing royalty transaction:

  • If the totals match, the invoice is skipped.
  • If the totals don’t match, the invoice is processed again.

What happens during reprocessing

When an invoice is reprocessed due to a total change, eXtendRoyalties:

  1. Reviews the latest invoice lines (including newly added lines).
  2. Opens the existing royalty transaction linked to the invoice.
  3. Updates that same royalty transaction (it does not create another one):
    • Removes all existing royalty lines.
    • Rebuilds royalty lines from the current invoice lines.

Expected results

  • No new royalty transaction is created.
  • The existing royalty transaction is updated to match the invoice as it exists now.
  • Newly added royalty-eligible lines are included when lines are rebuilt.

When a new line might not be picked up

If the invoice total doesn’t change, the invoice is skipped because the stored total still matches the current total. Common examples:

  • The new line amount is 0.
  • You changed something that doesn’t affect the invoice total.