Woher kommen Restcent?
Teilt man einen Vertrag über $100,000 auf 36 Monatsperioden auf, hat der ideale Monatsbetrag kein Ende:
100,000 / 36 = 2,777.7777777...
Rundet man jede Monatsbuchung auf den Cent ($2,777.78), summieren sich die 36 Buchungen auf mehr als den Vertrag:
$2,777.78 × 36 = $100,000.08
Das sind acht Cent Umsatz ohne Vertrag dahinter. Das kommt von der Rundungsregel, nicht von einem einzelnen Produkt: Dasselbe passiert in einer Tabellenkalkulation, einem ERP oder einem eigenen Skript, das jede Periode unabhängig rundet. Wie eine konkrete Konfiguration von NetSuite Advanced Revenue Management (ARM) damit umgeht, hängt von ihrer Einrichtung ab; testen Sie es also, statt es anzunehmen.
Wie wächst der Rest bei Mehrkomponentenverträgen?
Er tritt bei jedem Schritt auf, der teilt:
- Aufteilung: Ein Bundle über $150,000, nach relativem SSP auf Abonnement, Implementierung und Support aufgeteilt, ergibt selten ganze Cent je Verpflichtung.
- Planung: Jede Verpflichtung wird dann über ihren eigenen Leistungszeitraum geteilt (36 Monate linear, ein Meilenstein, 12 Monate Support).
- Vertragsänderungen: Wird ein Zeitplan nach einer Änderung ohne Restregel neu aufgebaut, werden die Cent, die im ersten Zeitplan übrig blieben, nicht in den neuen übernommen.
Die Beträge bleiben klein, hinterlassen aber passive Rechnungsabgrenzungen, die nicht null erreichen, und jede ist eine Abstimmungsposition, die zum Abschluss zu erklären ist.
Vier Prüfungen für jeden Zeitplan
Führen Sie diese bei einem ARM-Revenue-Plan-Export oder einer Tabelle gleichermaßen durch:
- Die Aufteilungen auf die Verpflichtungen summieren sich auf den Cent genau zum Transaktionspreis.
- Der Zeitplan jeder Verpflichtung summiert sich zu ihrer Aufteilung.
- Die passive Rechnungsabgrenzung jeder Verpflichtung beträgt nach ihrer letzten Periode $0.00.
- Ein erneuter Lauf mit denselben Eingaben liefert dieselben Cent.
Schlägt eine Prüfung fehl, halten Sie eine Restregel schriftlich fest und wenden Sie sie konsequent an. Der residual-cent policy guide enthält Beispielformulierungen.
NetSuite ARM vs. Soluqube
Sie lösen unterschiedliche Probleme. ARM ist das Umsatzmodul eines ERP; Soluqube ist eine eigenständige Engine für Aufteilung, Zeitplan und Nachweis bei Verträgen, die Sie verteidigen wollen.
| Dimension | NetSuite ARM | Soluqube |
|---|---|---|
| Umfang | ERP-Umsatzmodul mit Fakturierung und Hauptbuchbuchung | Aufteilung, Zeitplan und Nachweis-Arbeitspapier; nur Export, keine Live-ERP-Synchronisierung |
| Rundungsregel | Hängt von der Konfiguration ab; dokumentieren Sie, was Ihre tut | Jede Periode abrunden; die letzte Periode nimmt den Rest auf |
| Klauselnachweis | Memo- und Referenzfelder | Seite, wörtlicher Auszug und Zeilenmarkierung je Verpflichtung |
| Vertragsänderungen | Im ERP-Workflow behandelt | Noch nicht automatisiert (auf der Roadmap) |
| Ind AS 115 GST | Über die Steuerkonfiguration | GST wird bei INR-Verträgen vor der Aufteilung isoliert |
| Ausgabe | Hauptbuchbuchungen und Berichte | Excel/CSV zur Prüfung und Buchung, SHA-256-gehasht |
Wie funktioniert die Restabsorption in der letzten Periode?
Zwei Mechanismen, beide einfach genug, um sie von Hand nachzurechnen.
1. Ganzzahlige Beträge
Beträge werden als Ganzzahlen mit 10^6 Einheiten pro Dollar gehalten und auf Cent gerundet, sodass es keinen binären Bruch zu runden gibt:
const SCALE = 10n ** 6n;
const total = 100_000n * SCALE; // $100,000.00
const months = 36n;
2. Die letzte Periode nimmt den Rest auf
Jede Periode erhält den abgerundeten Betrag; die letzte erhält, was übrig bleibt:
function finalPeriod(total: bigint, perPeriod: bigint, periods: bigint): bigint {
return total - perPeriod * (periods - 1n); // absorbs the remainder
}
// 35 × $2,777.77 + $2,778.05 = $100,000.00
Der Zeitplan summiert sich jedes Mal zum Vertragswert. Probieren Sie andere Beträge im schedule simulator aus.
Was Sie dem Abschlussprüfer übergeben
- Einen Zeitplan, der aufgeht: Aufteilungen und jede Periode summieren sich zum Transaktionspreis, und die passive Rechnungsabgrenzung endet bei $0.00.
- Klauselnachweis: die Seite und der Auszug hinter jeder Verpflichtung und jedem Preis.
- Ein gehashtes Arbeitspapier: SHA-256-Hashes und ein Merkle-Root auf dem Export, sodass ein erneuter Lauf verglichen werden kann.
Die Cent sind der einfache Teil. Die Beurteilung, die Abschlussprüfer testen, ist der SSP hinter der Aufteilung; siehe das SSP allocation example. Um Ihre eigenen Verträge durchzurechnen, siehe das design partner program.
Häufige Fragen
Warum können Umsatzpläne um ein paar Cent vom Vertragswert abweichen?
Weil jede Periode für sich auf den Cent gerundet wird. $100,000 / 36 sind $2,777.777...; rundet man jeden Monat auf $2,777.78, ergibt die Summe $100,000.08. Die Differenz stammt aus der Rundungsregel, unabhängig davon, welches System rechnet. Eine schriftliche Regel, die den Rest einer Periode zuweist, beseitigt sie.
Wie geht Soluqube mit dem Rest um?
Soluqube verwendet Ganzzahlarithmetik (BigInt) mit Skala 10^6, auf Cent gerundet, und Restabsorption in der letzten Periode. In der letzten Periode realisiert es die gesamte Gegenleistung abzüglich allem zuvor Realisierten, sodass der Zeitplan exakt zum Vertragswert passt.
Interessieren sich Abschlussprüfer für ein paar Cent?
Nicht als falsche Darstellung: Ein paar Cent liegen weit unter der Wesentlichkeitsgrenze. Der Aufwand ist mechanisch: Eine passive Rechnungsabgrenzung, die nie null erreicht, braucht eine manuelle Ausgleichsbuchung, und jede Ausgleichsbuchung braucht eine Erklärung. Abschlussprüfer widmen ihre Zeit der SSP-Beurteilung, Vertragsänderungen, dem Cutoff und den Kontrollen; ein Zeitplan, der auf den Cent aufgeht, beseitigt eine Ablenkung.