Перейти до основного вмісту
Beancount.io LogoBeancount.io

Визнання доходу для абонентської плати на основі використання: Посібник засновника зі стандарту ASC 606

9 хв. читанняMike ThriftMike Thrift
Визнання доходу для абонентської плати на основі використання: Посібник засновника зі стандарту ASC 606

Ви запустили продукт API з вимірюваним використанням. Клієнти поповнюють рахунок на $500 кредитів, витрачають їх протягом шести тижнів, викликаючи вашу кінцеву точку, а ви отримуєте оплату наперед. Просто, чи не так? Потім ваш бухгалтер запитує: "Скільки доходу ви насправді заробили в березні?"

Якщо ваша відповідь: "$500, тому що саме стільки надійшло на банківський рахунок", у вас проблема — і вона не маленька. Ціноутворення на основі використання та споживання стало стандартом для API-продуктів, інструментів ШІ та інфраструктурних стартапів, але правила бухгалтерського обліку для визнання цього доходу аж ніяк не спростилися через те, що модель виставлення рахунків стала гнучкішою. Помилка призведе не просто до неправильної податкової звітності — ви неправильно читатимете власну фінансову доріжку, введете в оману інвесторів і створите собі болючу переоцінку в майбутньому.

Ось що насправді регулює це, і як побудувати свій облік так, щоб цифри були правильними з першого разу.

Чому "Надходження грошей" не означає "Зароблений дохід"

Відповідно до US GAAP, визнання доходу регулюється ASC 606, п'ятикроковою структурою:

  1. Визначити договір з клієнтом
  2. Визначити зобов'язання до виконання в договорі
  3. Визначити ціну транзакції
  4. Розподілити ціну транзакції між зобов'язаннями до виконання
  5. Визнати дохід, коли (або в міру того, як) кожне зобов'язання до виконання виконується

Для фіксованої річної підписки це просто — дохід рівномірно визнається протягом 12 місяців незалежно від того, коли був сплачений рахунок. Для виставлення рахунків на основі використання, крок 5 є тим місцем, де все стає дійсно складним: ви визнаєте дохід у міру споживання послуги клієнтом, а не коли він вам платить.

Це єдине речення є коренем майже кожної помилки в обліку на основі використання. Клієнт, який передплатив 500закредитиAPI,ненадаввам500 за кредити API, не надав вам 500 доходу — він надав вам $500 готівки та зобов'язання. Ви повинні йому або послугу, або гроші назад. Лише в міру того, як він витрачає виклики, сховище або обчислювальні ресурси, ви можете перевести це зобов'язання у визнаний дохід.

Зобов'язання бути готовим, простими словами

Бухгалтери мають термін для того, що ви насправді продаєте в моделі на основі використання: зобов'язання бути готовим (stand-ready obligation). Ви не просто обіцяєте обробляти виклики API — ви обіцяєте бути доступним для їх обробки на вимогу, коли клієнт забажає, до будь-якого обсягу, який йому потрібен.

Це важливо, оскільки може розділити ваш дохід на дві концептуально різні частини:

  • Компонент доступу — цінність простої доступності (іноді визнається рівномірно протягом договірного періоду)
  • Компонент споживання — цінність, надана за одиницю фактичного використання (визнається в міру використання)

Більшість чистих продуктів з оплатою за виклик (без базової плати, без мінімальних зобов'язань) зводять це лише до компонента споживання — це добре, оскільки це простіший випадок для обліку.

Змінна винагорода: Чому не можна просто чекати і дивитися

Оскільки остаточна сума рахунку залежить від використання, яке ніхто не може передбачити на момент підписання договору, ASC 606 розглядає комісії на основі використання як змінну винагороду (variable consideration). Теоретично це означає, що ви повинні оцінити ціну транзакції заздалегідь, використовуючи або:

  • Метод очікуваної вартості — середньозважене за ймовірністю можливих результатів, або
  • Метод найбільш імовірної суми — вашу єдину найкращу оцінку

І, що важливо, ви можете включити оцінку у свій визнаний дохід лише тією мірою, якою значна сторнування не відбудеться пізніше, коли фактичне використання стане відомим. Це "обмеження" існує спеціально для того, щоб запобігти передчасному визнанню компаніями оптимістичного доходу, який потім доведеться коригувати — це модель, яку регулятори неодноразово відзначали під час аудитів програмного забезпечення.

Для незалежного розробника, який працює ефективно, побудова зважених за ймовірністю прогнозів використання щомісяця є надмірною. На щастя, є спрощений підхід.

Практичний спрощений підхід, який варто використовувати майже кожному API-бізнесу

ASC 606 включає практичний спрощений підхід "право на виставлення рахунку": якщо сума, яку ви маєте право виставити в рахунку за певний період, безпосередньо відповідає вартості, яку ви надали в цьому періоді, ви можете пропустити вправу з оцінюванням і просто визнавати дохід у міру використання, в тій сумі, на яку ви маєте право виставити рахунок.

Це стандартна модель для чистого ціноутворення за виклик, за токен або за транзакцію: якщо ви стягуєте $0,001 за виклик API без знижок за обсяг або мінімальних зобов'язань, сума, яку ви можете виставити в рахунку за денні виклики, є вартістю, наданою того дня. Оцінка не потрібна — ви визнаєте дохід у міру здійснення викликів, крапка.

Де спрощений підхід перестає працювати — це багаторівневе або кумулятивне ціноутворення на основі обсягу, де ціна за одиницю в другому періоді залежить від того, скільки клієнт використав у першому періоді (наприклад: "перші 100 000 викликів за 0,002,все,щовищецього,за0,002, все, що вище цього, за 0,001"). У такому випадку сума, виставлена в рахунку в будь-якому окремому періоді, не відповідає чітко вартості цього періоду, і вам може знадобитися належне оцінювання. Якщо ваше ціноутворення має об'ємні рівні, варто обговорити це з бухгалтером, перш ніж припускати, що спрощений підхід застосовується.

Конкретний приклад

Припустимо, ваш API-продукт має базову плату 200намісяць,якавключає200000викликів,аперевитративиставляютьсяза200 на місяць, яка включає 200 000 викликів, а перевитрати виставляються за 0,001/виклик за тією ж ефективною ставкою, що й включені виклики:

  • База + включене використання: оскільки ставка перевитрат відповідає ефективній включеній ставці, вся комісія — база плюс перевитрати — зазвичай підпадає під практичний спрощений підхід для рахунків. Ви визнаєте 200рівномірновміруспоживання200000включенихвикликів,плюс200 рівномірно в міру споживання 200 000 включених викликів, плюс 0,001 за кожен виклик перевитрат у міру його використання.
  • Передплачені пакети кредитів: клієнт купує кредити на 1,000усічні.Видебетуєтегрошовікошти,кредитуєтевідстроченийдохідна1,000 у січні. Ви дебетуєте грошові кошти, кредитуєте **відстрочений дохід** на 1,000. У лютому, коли вони витрачають кредити за 0,002/виклик,видебетуєтевідстроченийдохідікредитуєтевизнанийдохідвикликзавикликом.Якщо0,002/виклик, ви дебетуєте відстрочений дохід і кредитуєте визнаний дохід виклик за викликом. Якщо 300 кредитів залишаються невикористаними на кінець місяця, $300 залишаються зобов'язанням у вашому балансі — а не доходом, незалежно від того, наскільки добре виглядає березень.
  • Невиставлене використання на кінець місяця: ваш цикл виставлення рахунків триває з 1-го по 1-е число, але використання клієнта в грудні не виставляється в рахунку до 2 січня. Цей розрив все одно потребує бухгалтерського проведення: дебетуйте невиставлену дебіторську заборгованість (актив), кредитуйте дохід на вартість викликів, зроблених у грудні, але ще не виставлених у рахунку. Коли рахунок нарешті виставляється, ви перекласифікуєте з невиставленої дебіторської заборгованості до стандартної дебіторської заборгованості — дохід уже було визнано.

Податки на касовій основі vs. Бухгалтерський облік на основі нарахування

Ось де багато засновників-одиночок заплутуються: ваша податкова декларація та ваше визнання доходу не обов'язково повинні базуватися на одній і тій же основі, і часто не повинні. Більшість малих підприємств можуть подавати податки на касовій основі — дохід оподатковується при отриманні, витрати віднімаються при оплаті — незалежно від того, що ASC 606 говорить про те, коли дохід "зароблений". ТОВ з одним учасником, яке продає кредити API, може законно сплатити податок з передоплати в 1,000утомуроці,коливонанадійшланабанківськийрахунок,навітьякщойоговнутрішнійоблікпоказуєлише1,000 у тому році, коли вона надійшла на банківський рахунок, навіть якщо його внутрішній облік показує лише 700 як визнаний дохід, а $300 — як відстрочений дохід.

Пастка полягає в тому, щоб розглядати ці два погляди як взаємозамінні та вести лише один набір цифр. Якщо ви відстежуєте лише підсумки на касовій основі, у вас не буде обґрунтованої відповіді, коли потенційний покупець, інвестор або кредитор попросить дохід на основі GAAP під час due diligence — і на той час буде надто пізно відновлювати місяці історії використання. Ведіть обидва погляди у своїй книзі з самого початку: грошовий потік, який ви можете передати своєму податковому консультанту, та нарахування з явно відстежуваним відстроченим доходом і невиставленою дебіторською заборгованістю, щоб на будь-яке запитання можна було відповісти з одного джерела правди, а не з електронної таблиці, створеної в умовах дефіциту часу.

Помилки, які насправді кусаються

Розмовляючи з командами, які пройшли через це, невдачі групуються навколо кількох повторюваних моделей:

  • Дрейф вимірювання. Якщо ваш конвеєр відстеження використання недораховує або перераховує виклики відносно того, що ви насправді виставляєте в рахунку, ваш обліковий регістр доходу та система виставлення рахунків безшумно розходяться — і ніхто не помічає до звірки, яка для команди, що працює самостійно, може бути "коли бухгалтер запитає, чому цифри не збігаються".
  • Зміни плану в середині циклу без логіки пропорційного розподілу. Клієнт підвищує тариф на 15-й день 30-денного циклу. Якщо ваша система не розділяє використання та ціноутворення цього періоду правильно, ви або перевизнаєте, або недовизнаєте дохід для цього клієнта в цьому місяці.
  • Відсутність відокремлення логіки виставлення рахунків від логіки визнання доходу. Спокусливо вважати "те, що ми виставили в рахунку" як "те, що ми заробили". Для фіксованих підписок ці цифри швидко сходяться. Для ціноутворення на основі використання вони часто не сходяться — особливо з передплаченими кредитами або річними мінімумами.
  • Суперечки та кредити як запізніла думка. Якщо клієнт оскаржує плату за перевитрати, і ви надаєте кредит, цей кредит повинен пройти через ваш обліковий регістр доходу, а не лише через вашу систему виставлення рахунків, інакше ви завищите дохід за період, який ви вже сторнували.

Вбудовування цього у ваш облік з першого дня

Ніщо з цього не вимагає корпоративного бухгалтерського програмного забезпечення, коли ви малі. Потрібно лише трактувати ваші події використання як справжній бухгалтерський артефакт, а не просто як вхідні дані для виставлення рахунків:

  • Ведіть аудований журнал подій використання (мітка часу, кількість, застосована ставка) окремо від вашої системи виставлення рахунків — він знадобиться для відновлення доходу за періодами та для захисту цифр, якщо вас коли-небудь перевірятимуть або ви залучатимете фінансування.
  • Відстежуйте відстрочений дохід та невиставлену дебіторську заборгованість як явні рахунки в книзі, а не неявні припущення. Якщо клієнт зробив передоплату і не використав її повністю, цей залишок повинен бути видимим у вашому обліку, а не похованим у приладовій панелі виставлення рахунків, на яку ніхто, крім відділу продажів, не дивиться.
  • Звіряйте вашу систему виставлення рахунків з вашим обліковим регістром доходу за графіком — щонайменше щомісяця — щоб дрейф вимірювання виявлявся за тижні, а не за квартали.

Це саме та структура, для якої підходить простий текстовий облік з контролем версій. Коли ваш план рахунків існує в книзі, відстежуваній через Git, а не в приладовій панелі SaaS як у чорній скриньці, "покажіть мені відстрочений дохід станом на 1 березня" і "покажіть мені кожен запис доходу на основі використання для цього клієнта з моменту реєстрації" — це просто запити до файлу, який ви насправді можете прочитати, а не запит у службу підтримки вашого постачальника послуг виставлення рахунків.

Зберігайте чесність вашого доходу на основі використання

Ціноутворення на основі використання справді краще для клієнтів і часто краще для зростання — але воно покладає реальну бухгалтерську складність на засновників, які воліли б займатися розробкою продукту. Beancount.io надає вам простий текстовий бухгалтерський облік з подвійним записом, який робить відстрочений дохід, невиставлену дебіторську заборгованість та визнання на основі використання прозорими та такими, що піддаються аудиту, замість того, щоб ховати їх всередині чийогось SaaS. Почніть безкоштовно та підтримуйте точність ваших книг на рівні вашого конвеєра вимірювання.

Поділитися цією статтею

12 хв. читання

ASC 606 для SaaS-стартапів: п'ятикрокова модель, відкладений дохід та помилки, що руйнують аудити

ASC 606 вимагає від SaaS-компаній визнавати дохід у міру надання послуг, а не в…

saas
revenue-recognition
8 хв. читання

Білінг за токени: Посібник з визнання доходу для SaaS-сервісів зі штучним інтелектом на основі використання

Стандарт ASC 606 все ще регулює ціноутворення на основі токенів у ШІ, але…

revenue-recognition
saas
11 хв. читання

Венчурний борг та позики під регулярний дохід у 2026 році: Посібник для фаундерів

Як працюють венчурний борг та позики під регулярний дохід у 2026 році — ставки…

venture-debt
startup
14 хв. читання

Замовлення, рахунки та дохід: трикутник звірки SaaS

Як фінансові команди SaaS узгоджують замовлення, рахунки та визнаний дохід…

saas
revenue-recognition
8 хв. читання

Бухгалтерський облік для бізнесу плагінів і тем WordPress: поновлення ліцензій, податок мерчанта-реєстратора та звірка виплат Envato, Freemius і Stripe

З 1 липня 2026 року Envato перейшла на фіксовану частку доходу автора у 50%,…

plugins
revenue-recognition