RosterRoyalties
RosterRoyalties

Fast Approval Workflow

The Fast Approval Workflow is your command centre for batch processing royalty statements. Rather than reviewing and approving statements one at a time, it brings every pending statement into a single modal where you can configure global parameters, apply per-artist overrides, manage recoupable costs, preview generated PDFs, and approve your entire roster in one action.

Location: Royalty Statements → Fast Approval button. The button appears automatically after a bulk CSV upload, and also persists as a permanent button whenever pending statements exist.

Upload your CSV first

Fast Approval works on statements that have been generated from a CSV upload. Complete the Bulk Import step before using this workflow.

What it does

When the modal opens, it loads all statements with a Pending status into a single list alongside the relevant account, label, and recoupable cost data needed to calculate accurate payouts. Every adjustment you make — global or per-statement — updates the net-to-artist figures live before anything is committed.

Key figures shown per statement:

  • Gross — raw amount from the CSV before any deductions
  • Visible — gross after the label deduction % is applied
  • Net to artist — final payout after split % and all recoupable costs

Global defaults & per-statement overrides

The modal is designed around a two-level configuration system: global defaults that apply to every statement, with the ability to override any value for individual artists.

Global defaults

Set a Global Artist Split % and a Global Label Deduction % at the top of the modal. Click Apply to All to push these values to every statement in the batch simultaneously.

  • Artist Split % — the percentage of the gross that flows to the artist after the label deduction
  • Label Deduction % — a top-line deduction applied before the split is calculated (e.g. distribution fee, label overhead)

Per-statement overrides

Expand any statement in the list to set values that override the global defaults for that artist only. Available overrides per statement:

  • Artist Split % — overrides the global split for this artist
  • Label Deduction % — overrides the global deduction for this artist
  • Opening Balance — sets a fixed recoupment starting balance. When set to a non-zero value, it replaces any database-managed recoupable costs for this statement. Any inline extra costs are always added on top.
  • Recoup from artist share — a toggle controlling whether recoupable costs are deducted from the artist's split specifically
  • Set Balance to 0 — resets all existing and extra costs for this statement, giving the artist a clean slate for the period

Saved splits are not modified

Overrides applied here affect this batch only. The per-artist splits saved under Royalty Management — Splits are not changed.

Recoupable cost management

For each expanded statement, the modal shows all active recoupable costs already on the artist's account (e.g. recording advances, studio costs). You have full control over how each cost is applied within this run.

Enable or disable existing costs

Toggle the visibility icon next to any database cost to exclude it from this statement's calculation without deleting it. Disabled costs are skipped in the net payout calculation and in the final approved statement — they remain on the artist's account for future periods.

Purchase Orders link directly to recoupables

Costs raised via Purchase Orders linked to recoupables appear here automatically — no separate entry needed. Each cost shows as an itemised line on the approved statement so artists can see exactly what was deducted and why.

Add inline costs or credits

Add ad-hoc costs or credits specific to this statement and this run. These do not create permanent recoupable cost records — they apply only during the current approval.

  • Enter a description and amount, then click Add
  • Items can be reordered via drag-and-drop, toggled on/off, or removed
  • Negative amounts act as credits against the recoupment balance

Copy costs across statements

Use the Copy Costs action to duplicate all inline costs from one statement to multiple other statements in the batch. A sub-modal guides you to select a source statement and choose target statements via checkboxes — useful when the same ad-hoc deduction applies to several artists.

Statement chaining

Statement chaining handles artists who have multiple pending statements in the same run — for example, when you upload several months of royalty data at once. If an earlier period results in a negative net payout (i.e. recoupable costs exceed royalties for that month), chaining automatically carries that deficit forward as a credit into the next statement, so the artist's balance flows correctly across periods rather than being resolved independently per statement.

Custom identifiers — the A1–A3 system

The Chain Balances modal presents every artist who has more than one pending statement in the current batch. Each statement gets a custom identifier field — a short label you assign to represent its position in the sequence. The convention is a letter for the artist and a number for the period:

  • A1, A2, A3 — Artist A's January, February, March statements
  • B1, B2 … B9 — Artist B's nine monthly statements in the batch
  • Any label works — Q1-2024, Jan, Mar — the system treats them as display labels only

These labels give you a clear visual map of the chain so you can confirm the sequence is correct before committing. They are stored against the statement record and appear in the receipt snapshot and audit trail.

Step-by-step

  1. Click Chain Balances in the Fast Approval modal. The sub-modal opens showing all artists with multiple pending statements, each sorted by period start date by default.
  2. For each artist, use the move up / move down arrows to arrange their statements in the correct chronological order. This manual ordering step is required because statements are not always uploaded in strict date sequence.
  3. Enter a custom identifier into the input field next to each statement — e.g. A1 for the earliest, A2 for the next, and so on. These labels are per-statement and can be anything meaningful to your workflow.
  4. Select which statements to include in the chain using the checkboxes. You can chain all of an artist's statements or only a subset.
  5. Click Confirm & Chain. The system processes each artist's ordered group: for every statement after the first, it checks the previous statement's net payout. If that payout was negative, the deficit is converted into a credit and added to the next statement's inline extra costs automatically.
  6. Back in the Fast Approval modal, the net payout figures update immediately to reflect the chained balances. Review the figures, then proceed to approval.

Consistency check before carry-over

Before carrying a balance between two consecutive statements, the system checks that their recoupable costs match. If the costs differ — indicating a possible change in the artist's deal structure between periods — chaining is skipped for that pair and a warning is shown. This prevents accidental carry-overs when a new agreement or cost structure is in place. Review the flagged pair manually before approving.

Chaining configuration is saved as a draft

The order, custom identifiers, and selected statements in the chain modal are all persisted as part of the run's draft — so if you close the modal and return later, your chaining setup is restored exactly as you left it.

Statement preview

Before approving, you can see exactly what the final statement PDF will look like. Click the Preview (eye) icon on any expanded statement to open a full PDF preview that reflects all current global defaults, overrides, and inline costs for that artist.

The preview is non-destructive — it generates a temporary mock statement and does not save anything to the database. You can adjust settings and re-preview as many times as needed.

Filtering and sorting

Large batches can be navigated using the filter and sort controls at the top of the statement list:

  • Filter by payout status — show all statements, only positive payouts, or only negative payouts
  • Sort by — artist name, period, gross amount, or net payout
  • Sort direction — ascending or descending

These controls affect the display only. All pending statements remain in the batch regardless of the current filter.

Draft saving

All work in the modal is automatically saved as a draft as you go — overrides, inline costs, global settings, and chaining configuration. If you close the browser or navigate away before approving, your draft is restored the next time you open Fast Approval for the same batch.

A Draft savedindicator confirms the save state. When a draft is restored, a notification informs you so you know you're continuing from where you left off rather than starting fresh.

Adding more statements mid-run

If you need to add statements to the current batch without closing the modal, click Add CSV to Run in the footer. This opens the Bulk Statement Upload flow directly — once the upload completes, the new statement IDs are added to the current batch and the list refreshes automatically.

Approving & notifying artists

When you are ready, click Approve All Statements (or the count of selected statements). Only statements you have selected are processed — any you deselected remain pending.

Notification options:

  • Notify artists on approval — toggle before clicking approve. Artists receive an in-app notification the moment their statement is approved.
  • Notify All Approved Artists — a bulk email button available after approval completes, which sends an email to every artist in the session.

Both options are independent — use either, both, or neither.

Approvals are final

Once approved, a statement is locked immediately. Its figures cannot be changed after approval — see Receipt Snapshot below.

Receipt snapshot & audit trail

At the moment of approval, RosterRoyalties generates an immutable receipt snapshot for each statement. This is a JSON record embedded directly into the statement entity containing:

  • Artist split % and label deduction % applied
  • Gross amount, visible amount, and net payable
  • Every recoupable cost that was applied or disabled, with amounts and descriptions
  • Every inline extra cost or credit added during the run
  • The opening balance, if set
  • Timestamp of approval

The snapshot is permanent — it does not change even if account data, splits, or recoupable costs are updated later. This ensures that the approved statement is always a true record of what was calculated at approval time, providing a clear and defensible audit trail for artist disputes or accounting reviews.

For more on why immutable records matter, see Royalty Audit Trail.

Last updated 7 April 2026View changelog