Wiele początkujących lub szybko rozwijających się firm technologicznych (takich jak firmy typu software-as-a-service lub SaaS) napotyka na znaczne koszty początkowe przy tworzeniu oprogramowania, które później będzie sprzedawane lub wykorzystywane do obsługi klientów. Często właściciele firm zadają sobie pytanie, jak właściwie traktować te koszty rozwoju oprogramowania: czy należy je ujmować w kosztach czy kapitalizować? Określenie tych kosztów może znacząco wpłynąć na wyniki finansowe firmy, w tym na wskaźnik EBITDA, który jest punktem odniesienia, na którym skupia się większość prywatnych inwestorów w celu określenia wyceny firmy. W niniejszym artykule postaramy się wyjaśnić CEO/CFO/Controllerowi, jak lepiej zrozumieć wytyczne amerykańskich Ogólnych Zasad Rachunkowości dotyczące tego tematu.
Po pierwsze, standardy rachunkowości w ramach GAAP definiują dwa zestawy wskazówek dotyczących kapitalizacji oprogramowania:
- Oprogramowanie do sprzedaży, leasingu lub wprowadzenia na rynek (ASC 985-20)
- Oprogramowanie do użytku wewnętrznego (ASC 350-20)
Standardy te mają zestaw różnych zasad rachunkowości, według których koszty mają być kapitalizowane lub wydatkowane.
Oprogramowanie przeznaczone do sprzedaży, leasingu lub wprowadzenia na rynek
Zgodnie z ASC 985, dopóki technologia nie osiągnie wykonalności technologicznej, wszystkie koszty poniesione do tego momentu będą musiały być wydatkowane w momencie ich poniesienia. Wykonalność technologiczna jest definiowana w ASC 985 jako moment, w którym
„wszystkie czynności związane z planowaniem, projektowaniem, kodowaniem i testowaniem, które są niezbędne do ustalenia, że produkt może być wytwarzany w celu spełnienia specyfikacji projektu, w tym funkcji, cech i wymagań technicznych.”
Wielu przedstawicieli branży oprogramowania stoi na stanowisku, że wykonalność technologiczna jest osiągana tylko wtedy, gdy oprogramowanie może być używane lub konsumowane w jakiejkolwiek formie przez społeczeństwo. Przy takim sposobie myślenia, większość kosztów prac rozwojowych zostanie odpisana w koszty. Inni jednak mogą uważać, że wykonalność technologiczna występuje przed udostępnieniem produktu do sprzedaży, ponieważ produkt może funkcjonować przed wprowadzeniem go na rynek w ograniczonym zakresie na użytek wewnętrzny lub na użytek „rodziny i przyjaciół” w celu wygenerowania opinii. Jak widać, wykonalność technologiczna może być przedmiotem interpretacji firmy w zależności od jej produktu i zastosowania. Po uzyskaniu wykonalności technologicznej, wszystkie pośrednie i bezpośrednie koszty związane z rozwojem oprogramowania będą kapitalizowane do momentu wydania klientom.
Oprogramowanie do użytku wewnętrznego
Pod ASC 350, jeżeli spółka rozwija wewnętrznie oprogramowanie wyłącznie w celu zaspokojenia wewnętrznych potrzeb spółki, to koszty mogą zacząć być kapitalizowane po przejściu produktu przez etap wstępnego projektu i do etapu rozwoju aplikacji. Zgodnie z ASC 350,
„Etap rozwoju aplikacji obejmuje (a) projektowanie ścieżki rozwoju, w tym konfigurację i interfejsy oprogramowania, (b) kodowanie, (c) instalację na sprzęcie oraz (d) testowanie, w tym przetwarzanie równoległe. W tej fazie należy skapitalizować wewnętrzne i zewnętrzne koszty opracowania oprogramowania do użytku wewnętrznego, jak również koszty opracowania lub pozyskania oprogramowania wykorzystywanego do dostępu do starych danych lub ich konwersji przez nowe systemy. Natomiast koszty konwersji danych powinny być wydatkowane. Również wszelkie koszty szkolenia poniesione na tym etapie powinny być odpisane w koszty.”
W związku z powyższym koszty poniesione na wybór dostawców, doradztwo, planowanie oraz etapy podejmowania decyzji strategicznych będą podlegały wydatkowaniu, ponieważ są one częścią wstępnego etapu projektu. Koszty poniesione na faktyczne opracowanie aplikacji (tj. kodowanie oprogramowania, instalacja serwerów, hosting serwerów w trakcie opracowywania, koszty odsetek poniesione w trakcie opracowywania oprogramowania itp. Po wdrożeniu, wszystkie dodatkowe opłaty, takie jak szkolenia, aktualizacje i ulepszenia będą ponownie wydatkowane.
Więc, gdzie plasują się produkty SaaS?
Przedsiębiorstwa SaaS stoją przed trudną decyzją dotyczącą wyboru wytycznych, których należy przestrzegać. Niektóre z nich mogą twierdzić, że świadczone przez nie usługi są oprogramowaniem, ponieważ oprogramowanie jest produktem nabywanym przez klienta, a zatem zastosowanie ma ASC 985. Inni mogą twierdzić, że ich klienci nie są właścicielami oprogramowania, a jedynie mają dostęp do świadczonej przez nich usługi, która jest obsługiwana przez wewnętrznie opracowane oprogramowanie, z którym klienci mają styczność, a zatem zastosowanie mają wytyczne ASC 350. Określenie tego będzie w rzeczywistości zależeć od różnych czynników. Niektóre z tych czynników mogą obejmować następujące elementy:
- Umowy hostingowe będą generalnie zgodne z ASC 350
- Oprogramowanie może być załadowane na sprzęt klienta z klientem, który ma fizyczny dostęp do kodu źródłowego może być zgodne z ASC 985
Z tych powodów, większość tradycyjnie hostingowych spółek SAAS może kapitalizować swoje koszty rozwoju jako oprogramowanie do użytku wewnętrznego.
Podsumowanie
Poniżej znajduje się podsumowanie różnic pomiędzy ASC 985 i ASC 350
Oprogramowanie, które ma być sprzedane, leasingowane lub wprowadzane do obrotu (ASC 985-20) | Oprogramowanie do użytku wewnętrznego | |
Kiedy można rozpocząć kapitalizację kosztów? | Wykonalność technologiczna uzyskana | Na etapie rozwoju aplikacji |
Kiedy koszty zaczynają się amortyzować? | Od momentu wydania oprogramowania | Od momentu wprowadzenia do eksploatacji |
Jak będą amortyzowane te koszty? | Amortyzowane do COGS przy zastosowaniu większej z następujących metod:
– Stosunek bieżących przychodów brutto dla danego produktu do sumy bieżących i przewidywanych przyszłych przychodów brutto dla tego produktu – Metoda liniowa przez pozostały szacowany okres ekonomicznej użyteczności produktu, w tym okres objęty sprawozdaniem. |
Przy zastosowaniu metody liniowej przez przewidywany okres użytkowania poprzez koszty amortyzacji |