Schedule of Restatement of Statements of Operation (Details) - USD ($) $ / shares in Units, $ in Thousands |
3 Months Ended | 6 Months Ended | 9 Months Ended | 12 Months Ended | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Sep. 30, 2024 |
Jun. 30, 2024 |
Mar. 31, 2024 |
Sep. 30, 2023 |
Jun. 30, 2023 |
Mar. 31, 2023 |
Sep. 30, 2024 |
Jun. 30, 2024 |
Mar. 31, 2024 |
Sep. 30, 2023 |
Jun. 30, 2023 |
Mar. 31, 2023 |
Jun. 30, 2024 |
Jun. 30, 2023 |
Sep. 30, 2024 |
Sep. 30, 2023 |
Dec. 31, 2024 |
Dec. 31, 2023 |
|
Revenue, net | $ 12,295 | $ 12,042 | $ 10,178 | $ 9,203 | $ 11,045 | $ 9,655 | $ 22,219 | $ 20,701 | $ 34,515 | $ 29,904 | $ 46,926 | $ 40,036 | ||||||
Cost of revenue | 4,393 | 4,236 | 3,867 | 3,821 | 3,826 | 3,514 | 8,102 | 7,340 | 12,496 | 11,161 | 17,001 | 14,980 | ||||||
Gross profit | 7,902 | 7,806 | 6,311 | 5,382 | 7,219 | 6,141 | 14,117 | 13,361 | 22,019 | 18,743 | 29,925 | 25,056 | ||||||
Operating expenses: | ||||||||||||||||||
Sales and marketing | 2,864 | 2,887 | 2,821 | 2,498 | 2,605 | 2,342 | 5,707 | 4,947 | 8,571 | 7,444 | 11,655 | 10,233 | ||||||
Research and development | 199 | 146 | 137 | 149 | 186 | 149 | 283 | 335 | 483 | 484 | 676 | 636 | ||||||
General and administrative | 2,538 | 2,141 | 2,239 | 2,124 | 2,894 | 2,494 | 4,381 | 5,389 | 6,918 | 7,515 | 9,486 | 9,363 | ||||||
Acquisition related amortization expense | 199 | 318 | 318 | 635 | 834 | 861 | ||||||||||||
Total operating expenses | 5,601 | 5,174 | 5,197 | 4,970 | 6,003 | 5,303 | 10,371 | 11,306 | 15,972 | 16,277 | 21,817 | 21,100 | ||||||
Operating income from continuing operations | 2,301 | 2,632 | 1,114 | 412 | 1,216 | 838 | 3,746 | 2,055 | 6,047 | 2,466 | 8,108 | 3,956 | ||||||
Interest accretion expense | (4) | (12) | (19) | (26) | (31) | (35) | (30) | (66) | (34) | (92) | ||||||||
Note payable interest expense | (141) | (176) | (197) | (230) | (228) | (225) | (373) | (453) | (514) | (682) | ||||||||
Other expense, net | (394) | 71 | (82) | (252) | (174) | 19 | (12) | (156) | (406) | (408) | ||||||||
Income from continuing operations before tax | 1,762 | 2,515 | 816 | (96) | 783 | 597 | 3,331 | 1,380 | 5,093 | 1,284 | 6,950 | 2,281 | ||||||
Provision for income taxes | 4 | 4 | 4 | 4 | 4 | 4 | 8 | 8 | 12 | 12 | 4 | 17 | ||||||
Income from continuing operations | 1,758 | 2,511 | 812 | (100) | 779 | 593 | 3,323 | 1,372 | 5,081 | 1,272 | 6,946 | 2,264 | ||||||
Loss from discontinued operations, net of tax | (82) | (74) | (104) | (86) | (220) | (79) | (178) | (299) | (260) | (385) | (244) | (310) | ||||||
Net income | $ 1,676 | $ 2,437 | $ 708 | $ (186) | $ 559 | $ 514 | $ 3,145 | $ 1,073 | $ 4,821 | $ 887 | $ 6,702 | $ 1,954 | ||||||
Basic net income (loss) per share of common stock: | ||||||||||||||||||
From continuing operations | $ 0.40 | $ 0.57 | $ 0.19 | $ (0.02) | $ 0.18 | $ 0.14 | $ 0.76 | $ 0.32 | $ 1.16 | $ 0.29 | $ 1.48 | $ 0.52 | ||||||
From discontinued operations | (0.02) | (0.02) | (0.02) | (0.02) | (0.05) | (0.02) | (0.04) | (0.07) | (0.06) | (0.09) | (0.06) | (0.07) | ||||||
Net income (loss) per basic share of common stock | 0.38 | 0.56 | 0.16 | (0.04) | 0.13 | 0.12 | 0.72 | 0.25 | 1.10 | 0.21 | 1.42 | 0.45 | ||||||
Diluted net income (loss) per share of common stock: | ||||||||||||||||||
From continuing operations | 0.40 | 0.57 | 0.19 | (0.02) | 0.18 | 0.14 | 0.76 | 0.32 | 1.15 | 0.29 | 0.41 | 0.52 | ||||||
From discontinued operations | (0.02) | (0.02) | (0.02) | (0.02) | (0.05) | (0.02) | (0.04) | (0.07) | (0.06) | (0.09) | (0.02) | (0.07) | ||||||
Net income (loss) per diluted share of common stock | $ 0.38 | $ 0.55 | $ 0.16 | $ (0.04) | $ 0.13 | $ 0.12 | $ 0.72 | $ 0.25 | $ 1.09 | $ 0.20 | $ 0.40 | $ 0.45 | ||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Basic | 4,393,000 | 4,376,000 | 4,370,000 | 4,319,000 | 4,311,000 | 4,307,000 | 4,373,000 | 4,309,000 | 4,380,000 | 4,313,000 | 4,387,000 | 4,317,000 | ||||||
Diluted | 4,423,000 | 4,401,000 | 4,384,000 | 4,319,000 | 4,316,000 | 4,308,000 | 4,393,000 | 4,313,000 | 4,404,000 | 4,355,000 | 15,734,000 | 4,364,000 | ||||||
Balance | $ (52,278) | $ (54,768) | $ (55,539) | $ (56,678) | $ (57,394) | $ (58,091) | $ (55,539) | $ (58,091) | $ (55,539) | $ (58,091) | $ (55,539) | $ (58,091) | ||||||
Treasury Balance, shares | 110,759 | 110,759 | 96,044 | 79,412 | 79,412 | 96,044 | 96,044 | 96,044 | ||||||||||
Balance | $ (50,538) | $ (52,278) | $ (54,768) | $ (56,724) | $ (56,678) | $ (57,394) | $ (50,538) | $ (52,278) | $ (54,768) | $ (56,724) | $ (56,678) | $ (57,394) | $ (52,278) | $ (56,678) | $ (50,538) | $ (56,724) | $ (2,217) | $ (55,539) |
Treasury Balance, shares | 128,196 | 110,759 | 110,759 | 85,720 | 79,412 | 79,412 | 128,196 | 110,759 | 110,759 | 85,720 | 79,412 | 79,412 | 110,759 | 79,412 | 128,196 | 85,720 | 130,340 | 96,044 |
Common Stock [Member] | ||||||||||||||||||
Operating expenses: | ||||||||||||||||||
Net income | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | $ 406 | $ 406 | $ 405 | $ 405 | $ 405 | $ 405 | $ 405 | $ 405 | $ 405 | $ 405 | $ 405 | $ 405 | ||||||
Balance, shares | 4,532,991 | 4,487,157 | 4,487,157 | 4,407,492 | 4,390,826 | 4,390,826 | 4,487,157 | 4,487,157 | 4,447,489 | 4,390,826 | 4,390,826 | 4,367,830 | 4,447,489 | 4,367,830 | 4,447,489 | 4,367,830 | 4,447,489 | 4,367,830 |
Balance | $ 406 | $ 406 | $ 406 | $ 405 | $ 405 | $ 405 | $ 406 | $ 406 | $ 406 | $ 405 | $ 405 | $ 405 | $ 406 | $ 405 | $ 406 | $ 405 | $ 406 | $ 405 |
Balance, shares | 4,532,991 | 4,487,157 | 4,487,157 | 4,407,492 | 4,390,826 | 4,390,826 | 4,532,991 | 4,487,157 | 4,487,157 | 4,407,492 | 4,390,826 | 4,390,826 | 4,487,157 | 4,390,826 | 4,532,991 | 4,407,492 | 4,539,663 | 4,447,489 |
Treasury Stock, Common [Member] | ||||||||||||||||||
Operating expenses: | ||||||||||||||||||
Net income | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | $ (2,024) | $ (2,024) | $ (2,008) | $ (1,985) | $ (1,985) | $ (1,976) | $ (2,008) | $ (1,976) | $ (2,008) | $ (1,976) | $ (2,008) | $ (1,976) | ||||||
Treasury Balance, shares | 128,196 | 110,759 | 110,759 | 85,720 | 79,412 | 79,412 | 110,759 | 110,759 | 96,044 | 79,412 | 79,412 | 71,120 | 96,044 | 71,120 | 96,044 | 71,120 | 96,044 | 71,120 |
Balance | $ (2,046) | $ (2,024) | $ (2,024) | $ (1,997) | $ (1,985) | $ (1,985) | $ (2,046) | $ (2,024) | $ (2,024) | $ (1,997) | $ (1,985) | $ (1,985) | $ (2,024) | $ (1,985) | $ (2,046) | $ (1,997) | $ (2,054) | $ (2,008) |
Treasury Balance, shares | 128,196 | 110,759 | 110,759 | 85,720 | 79,412 | 79,412 | 128,196 | 110,759 | 110,759 | 85,720 | 79,412 | 79,412 | 110,759 | 79,412 | 128,196 | 85,720 | 130,340 | 96,044 |
Additional Paid-in Capital [Member] | ||||||||||||||||||
Operating expenses: | ||||||||||||||||||
Net income | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | $ 188,277 | $ 188,224 | $ 188,146 | $ 187,865 | $ 187,708 | $ 187,516 | $ 188,146 | $ 187,516 | $ 188,146 | $ 187,516 | 188,146 | 187,516 | ||||||
Balance | $ 188,363 | $ 188,277 | $ 188,224 | $ 188,017 | $ 187,865 | $ 187,708 | 188,363 | 188,277 | 188,224 | 188,017 | 187,865 | 187,708 | 188,277 | 187,865 | 188,363 | 188,017 | 234,811 | 188,146 |
Retained Earnings [Member] | ||||||||||||||||||
Operating expenses: | ||||||||||||||||||
Net income | 6,702 | 1,954 | ||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | (245,310) | (247,507) | (242,082) | (242,963) | (243,522) | (244,036) | (242,082) | (244,036) | (242,082) | (244,036) | (242,082) | (244,036) | ||||||
Balance | (244,009) | (245,310) | (247,507) | (243,149) | (242,963) | (243,522) | (244,009) | (245,310) | (247,507) | (243,149) | (242,963) | (243,522) | (245,310) | (242,963) | (244,009) | (243,149) | (235,380) | (242,082) |
Previously Reported [Member] | ||||||||||||||||||
Revenue, net | 12,295 | 12,042 | 10,273 | 9,078 | 11,026 | 9,826 | 22,314 | 20,853 | 34,610 | 29,931 | 40,214 | |||||||
Cost of revenue | 4,789 | 4,611 | 4,202 | 4,124 | 4,191 | 3,848 | 8,812 | 8,039 | 13,602 | 12,163 | 16,310 | |||||||
Gross profit | 7,506 | 7,431 | 6,071 | 4,954 | 6,835 | 5,978 | 13,502 | 12,814 | 21,008 | 17,768 | 23,904 | |||||||
Operating expenses: | ||||||||||||||||||
Sales and marketing | 2,864 | 2,887 | 2,821 | 2,498 | 2,605 | 2,342 | 5,707 | 4,947 | 8,571 | 7,444 | 10,233 | |||||||
Research and development | 199 | 146 | 137 | 149 | 186 | 149 | 283 | 335 | 483 | 484 | 636 | |||||||
General and administrative | 2,538 | 2,141 | 2,239 | 2,124 | 2,894 | 2,494 | 4,381 | 5,389 | 6,918 | 7,515 | 9,363 | |||||||
Acquisition related amortization expense | 199 | 318 | 318 | 635 | 834 | 861 | ||||||||||||
Total operating expenses | 5,601 | 5,174 | 5,197 | 4,970 | 6,003 | 5,303 | 10,371 | 11,306 | 15,972 | 16,277 | 21,100 | |||||||
Operating income from continuing operations | 1,905 | 2,257 | 874 | (16) | 832 | 675 | 3,131 | 1,508 | 5,036 | 1,491 | 2,804 | |||||||
Interest accretion expense | (4) | (12) | (19) | (26) | (31) | (35) | (30) | (66) | (34) | (92) | ||||||||
Note payable interest expense | (141) | (176) | (197) | (230) | (228) | (225) | (373) | (453) | (514) | (682) | ||||||||
Other expense, net | (394) | 71 | (82) | (252) | (174) | 19 | (12) | (156) | (406) | (408) | ||||||||
Income from continuing operations before tax | 1,366 | 2,140 | 576 | (524) | 399 | 434 | 2,716 | 833 | 4,082 | 309 | 1,129 | |||||||
Provision for income taxes | 4 | 4 | 4 | 4 | 4 | 4 | 8 | 8 | 12 | 12 | 17 | |||||||
Income from continuing operations | 1,362 | 2,136 | 572 | (528) | 395 | 430 | 2,708 | 825 | 4,070 | 297 | 1,112 | |||||||
Loss from discontinued operations, net of tax | (82) | (74) | (104) | (86) | (220) | (79) | (178) | (299) | (260) | (385) | (310) | |||||||
Net income | $ 1,280 | $ 2,062 | $ 468 | $ (614) | $ 175 | $ 351 | $ 2,530 | $ 526 | $ 3,810 | $ (88) | $ 802 | |||||||
Basic net income (loss) per share of common stock: | ||||||||||||||||||
From continuing operations | $ 0.31 | $ 0.49 | $ 0.13 | $ (0.12) | $ 0.09 | $ 0.10 | $ 0.62 | $ 0.19 | $ 0.93 | $ 0.07 | $ 0.26 | |||||||
From discontinued operations | (0.02) | (0.02) | (0.02) | (0.02) | (0.05) | (0.02) | (0.04) | (0.07) | (0.06) | (0.09) | (0.07) | |||||||
Net income (loss) per basic share of common stock | 0.29 | 0.47 | 0.11 | (0.14) | 0.04 | 0.08 | 0.58 | 0.12 | 0.87 | (0.02) | 0.19 | |||||||
Diluted net income (loss) per share of common stock: | ||||||||||||||||||
From continuing operations | 0.31 | 0.49 | 0.13 | (0.12) | 0.09 | 0.10 | 0.62 | 0.19 | 0.92 | 0.07 | 0.25 | |||||||
From discontinued operations | (0.02) | (0.02) | (0.02) | (0.02) | (0.05) | (0.02) | (0.04) | (0.07) | (0.06) | (0.09) | (0.07) | |||||||
Net income (loss) per diluted share of common stock | $ 0.29 | $ 0.47 | $ 0.11 | $ (0.14) | $ 0.04 | $ 0.08 | $ 0.58 | $ 0.12 | $ 0.87 | $ (0.02) | $ 0.18 | |||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Basic | 4,393,000 | 4,376,000 | 4,370,000 | 4,319,000 | 4,311,000 | 4,307,000 | 4,373,000 | 4,309,000 | 4,380,000 | 4,313,000 | 4,317,000 | |||||||
Diluted | 4,423,000 | 4,401,000 | 4,384,000 | 4,319,000 | 4,316,000 | 4,308,000 | 4,393,000 | 4,313,000 | 4,404,000 | 4,355,000 | 4,364,000 | |||||||
Balance | (57,682) | (59,026) | (61,141) | (62,680) | (62,206) | (62,538) | $ (59,026) | $ (61,141) | $ (61,672) | $ (62,206) | $ (62,538) | $ (61,672) | $ (61,672) | (61,672) | ||||
Cumulative adjustments to accumulated deficit in prior years | 6,748 | 6,373 | 6,133 | 5,528 | 5,144 | 4,981 | ||||||||||||
Cumulative adjustments to net income | 396 | 375 | 240 | 428 | 384 | 163 | ||||||||||||
Balance | (57,682) | (59,026) | (61,141) | (62,680) | (62,206) | (62,538) | (57,682) | (59,026) | (61,141) | (62,680) | (62,206) | $ (62,538) | (59,026) | $ (62,206) | (57,682) | $ (62,680) | $ (61,672) | |
Previously Reported [Member] | Common Stock [Member] | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | 406 | 406 | 406 | 405 | 405 | 405 | ||||||||||||
Cumulative adjustments to accumulated deficit in prior years | ||||||||||||||||||
Cumulative adjustments to net income | ||||||||||||||||||
Previously Reported [Member] | Treasury Stock, Common [Member] | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | (2,046) | (2,024) | (2,024) | (1,997) | (1,985) | (1,985) | ||||||||||||
Cumulative adjustments to accumulated deficit in prior years | ||||||||||||||||||
Cumulative adjustments to net income | ||||||||||||||||||
Previously Reported [Member] | Additional Paid-in Capital [Member] | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | 188,363 | 188,277 | 188,224 | 188,017 | 187,865 | 187,708 | ||||||||||||
Cumulative adjustments to accumulated deficit in prior years | ||||||||||||||||||
Cumulative adjustments to net income | ||||||||||||||||||
Previously Reported [Member] | Retained Earnings [Member] | ||||||||||||||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Balance | (244,405) | (245,685) | (247,747) | (249,105) | (248,491) | (248,666) | ||||||||||||
Cumulative adjustments to accumulated deficit in prior years | 6,748 | 6,373 | 6,133 | 5,528 | 5,144 | 4,981 | ||||||||||||
Cumulative adjustments to net income | 396 | 375 | 240 | 428 | 384 | 163 | ||||||||||||
Revision of Prior Period, Reclassification, Adjustment [Member] | ||||||||||||||||||
Revenue, net | (95) | 125 | 19 | (171) | (95) | (152) | (95) | (27) | (178) | |||||||||
Cost of revenue | (396) | (375) | (335) | (303) | (365) | (334) | (710) | (699) | (1,106) | (1,002) | (1,330) | |||||||
Gross profit | 396 | 375 | 240 | 428 | 384 | 163 | 615 | 547 | 1,011 | 975 | 1,152 | |||||||
Operating expenses: | ||||||||||||||||||
Sales and marketing | ||||||||||||||||||
Research and development | ||||||||||||||||||
General and administrative | ||||||||||||||||||
Acquisition related amortization expense | ||||||||||||||||||
Total operating expenses | ||||||||||||||||||
Operating income from continuing operations | 396 | 375 | 240 | 428 | 384 | 163 | 615 | 547 | 1,011 | 975 | 1,152 | |||||||
Interest accretion expense | ||||||||||||||||||
Note payable interest expense | ||||||||||||||||||
Other expense, net | ||||||||||||||||||
Income from continuing operations before tax | 396 | 375 | 240 | 428 | 384 | 163 | 615 | 547 | 1,011 | 975 | 1,152 | |||||||
Provision for income taxes | ||||||||||||||||||
Income from continuing operations | 396 | 375 | 240 | 428 | 384 | 163 | 615 | 547 | 1,011 | 975 | 1,152 | |||||||
Loss from discontinued operations, net of tax | ||||||||||||||||||
Net income | $ 396 | $ 375 | $ 240 | $ 428 | $ 384 | $ 163 | $ 615 | $ 547 | $ 1,011 | $ 975 | $ 1,152 | |||||||
Basic net income (loss) per share of common stock: | ||||||||||||||||||
From continuing operations | $ 0.09 | $ 0.09 | $ 0.05 | $ 0.10 | $ 0.09 | $ 0.04 | $ 0.14 | $ 0.13 | $ 0.23 | $ 0.23 | $ 0.27 | |||||||
From discontinued operations | ||||||||||||||||||
Net income (loss) per basic share of common stock | 0.09 | 0.09 | 0.05 | 0.10 | 0.09 | 0.04 | 0.14 | 0.13 | 0.23 | 0.23 | 0.27 | |||||||
Diluted net income (loss) per share of common stock: | ||||||||||||||||||
From continuing operations | 0.09 | 0.09 | 0.05 | 0.10 | 0.09 | 0.04 | 0.14 | 0.13 | 0.23 | 0.22 | 0.26 | |||||||
From discontinued operations | ||||||||||||||||||
Net income (loss) per diluted share of common stock | $ 0.09 | $ 0.09 | $ 0.05 | $ 0.10 | $ 0.09 | $ 0.04 | $ 0.14 | $ 0.13 | $ 0.23 | $ 0.22 | $ 0.26 | |||||||
Weighted average number of common shares and common share equivalents outstanding: | ||||||||||||||||||
Basic | 4,393,000 | 4,376,000 | 4,370,000 | 4,319,000 | 4,311,000 | 4,307,000 | 4,373,000 | 4,309,000 | 4,380,000 | 4,313,000 | 4,317,000 | |||||||
Diluted | 4,423,000 | 4,401,000 | 4,384,000 | 4,319,000 | 4,316,000 | 4,308,000 | 4,393,000 | 4,313,000 | 4,404,000 | 4,355,000 | 4,364,000 | |||||||
Balance | $ 6,748 | $ 6,373 | $ 6,133 | $ 5,528 | $ 5,144 | $ 6,133 | $ 6,133 | $ 6,133 | ||||||||||
Treasury Balance, shares | 96,044 | 96,044 | 96,044 | 96,044 | ||||||||||||||
Balance | $ 7,144 | $ 6,748 | $ 6,373 | $ 5,956 | $ 5,528 | $ 5,144 | $ 7,144 | $ 6,748 | $ 6,373 | $ 5,956 | $ 5,528 | $ 5,144 | $ 6,748 | $ 5,528 | $ 7,144 | $ 5,956 | $ 6,133 | |
Treasury Balance, shares | 96,044 |